SQL Server 2005还原数据库
解决SQL Server 2005 还原数据库错误
解決SQL Server 2005 還原數據庫錯誤:System.Data.SqlClient.SqlError: 在...解決SQL Server 2005 還原數據庫錯誤:System.Data.SqlClient.SqlError: 在對'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\BusinessDB.mdf' 嘗試'RestoreContainer::ValidateTargetForCreation' 時,操作系統返回了錯誤'5(拒絕訪問)'在還源數據庫時出現以下錯誤(詳情參見下圖):System.Data.SqlClient.SqlError: 在對'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\BusinessDB.mdf' 嘗試'RestoreContainer::ValidateTargetForCreation' 時,操作系統返回了錯誤'5(拒絕訪問。
)'。
(Microsoft.SqlServer.Express.Smo)原因分析:沒有對"C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\"創建文件的權限(可以把它複製到data),這是SQL2005對文件夾的安全性限制。
解決辦法:沒有同名數據庫的時候就新建個同名數據庫修改文件夾到'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\”或其他盤的文件夾下(如E:\mydb)即可(原路径:C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\)。
SQLServer:用SQL语句还原数据库(withmove选项用法)
SQLServer:用SQL语句还原数据库(withmove选项用法)SQL Server:用 SQL 语句还原数据库(with move 选项用法)SQL Server:用 SQL 语句还原数据库(with move 选项用法)SQL Server:用 SQL 语句还原数据库(with Move 选项用法)。
当我们把服务器A上的一个数据库备份后,在服务器B上还原的时候,直接restore 的时候,大多情况下都会出错,可能的原因是数据库的文件(数据和日志)在不同服务器上所在的 path 不同。
这时候就需要 restore with move 选项,来把数据库文件还原到目标 path 中。
with move 的详细语法:MOVE 'logical_file_name' TO 'operating_system_file_name' [ ,...n ]当我在把SQL Server 2000 Instance(实例)中的数据库Nortwind,还原到 SQL Server 2005 Instance 中的时候,也需要使用 restore with move 选项来进行还原。
1. 查看 SQL Server 2000 中 Northwind 数据库文件的逻辑文件名(logical file name)和物理文件路径(operation system file name):use Nothwindgoselect name, filename, * from dbo.sysfilesname filename-------------- ------------------------------------------------------------------Northwind d:\program files\microsoft sql server\mssql$sqla\data\northwnd.mdfNorthwind_log d:\program files\microsoft sql server\mssql$sqla\data\northwnd.ldf2. 备份 SQL Server 2000.Northwind 数据库backup database Northwind to disk = 'c:\Northwind.bak'3. 在 SQL Server 2005 Instance 中还原 Northwind 数据库。
(2.18)备份与还原--还原的原理与总结
(2.18)备份与还原--还原的原理与总结关键字:恢复系统数据库⼀、还原的过程还原过程主要分为3个阶段。
1. 数据复制 此阶段将从数据库的备份介质将所有数据、⽇志和索引页复制到数据库⽂件中。
完成这个阶段后,数据库被恢复到备份介质所包含的最后⼀个检查点。
2. 重做(前滚) 此阶段将记录的事务应⽤到从备份复制的数据,以将这些数据前滚到恢复点。
此阶段将使数据库从最后⼀个检查点前滚到恢复点(recovery point)的最后⼀笔交易。
重做(前滚)阶段阶段后,数据库通常有未提交的事务,并处于“正在恢复,不可⽤”的状态。
3. 撤消(回滚) 此阶段将撤消(回滚)任何未提交的事务。
撤消(回滚)阶段后,数据库可供⽤户使⽤。
⼆、还原的过程⽰例以下是⼀个事务的⽰例 LSN01 提交事务1 LSN02 检查点 LSN03 执⾏事务2 LSN04 执⾏“完整备份1”(备份导致检查点) LSN05 执⾏事务3 LSN06 检查点LSN07 提交事务2 LSN08 执⾏“事务⽇志备份1”(恢复点)恢复过程如下:(1)第⼀阶段:将通过备份介质“完整备份1”,恢复到LSN04(即备份介质所包含的最后⼀个检查点)。
这个过程主要是以“区”为单位直接将数据页⾯复制到数据库⽂件中。
(2)第⼆阶段:根据备份介质“事务⽇志备份1”的记录,前滚到LSN08(即数据库的“恢复点”)。
此阶段后,LSN05和LSN07都被执⾏,被回写到数据页⾯,但此时尚不确定LSN05事务是否被提交,因此,此时数据库的状态为“正在恢复,不可使⽤”,需要等待后续阶段。
(3)第三阶段,在备份介质“事务⽇志备份1”中没有发现LSN05被提交的⽇志记录,因此需要回滚未提交的事务,即撤消LSN05。
此阶段后,数据库可正常使⽤,且恢复到“恢复点”。
完成上述3个阶段后,事务2被提交(根据根据LSN07),事务3被回滚(因为事务3在LSN08时未提交)。
三、还原的操作⽅法1. T-SQL⽰例:RESTORE DATABASE[db01]FROM DISK= N'C:\backup\DB01_Data_BAK.bak'WITH FILE=1, NORECOVERY, NOUNLOAD, STATS =10GORESTORE LOG[db01]FROM DISK= N'C:\backup\DB01_Log_BAK.bak'WITH FILE=2, NOUNLOAD, STATS =10GO2.SSMS四、还原的恢复状态 在⼀个或多个备份已还原后,恢复通常会包含重做和撤消两个阶段。
SQL2005数据库导入导出办法
精简版SQL Server 2005 数据库导出、导入办法
1、数据库导出(备份)
选中要备份(导出)数据库—>右击,选择“任务”(即Tasks)—>选择“备份”(即Back up)—>选择“普通”(即General),然后按下图选择操作
然后选择“选项”(即Options),按照下图选择操作,最后选择“确定”(即ok)即可将数据库备份。
2、数据库导入(还原)
首先,将要导入或还原的“.bak”文件放到c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup目录下。
其次,打开SQL Server ,选中要还原的数据库(即要将备份数据库导入的目标数据库)—>右击,选择“任务”(即Tasks)—>选择“还原数据库”(即Restore—>database)—>选择“普通”(即General),然后选择“从设备”(即From device),点击右侧选择目标框,会弹出一个窗口如下图所示
选择添加,会出现如下窗口
从中选择要还原的数据库备份,然后“确定”。
在添加页面选择“确定”。
就会回到“普通”页面,选中相应数据库,如下图:
然后选择“选项”(即Options)操作,按下图操作:
最后选择“确定”(或ok)即可。
SQL Server 2005数据库可疑恢复
SQL Server数据库1SQL Server 2005数据库可疑恢复日常对Sql Server 2005联系数据库执行操作时,有时对数据库(如:Sharepoint站点配置数据库名Sharepoint_Config)执行些不正常操作如数据库在读写时而无故停止数据库,从而导致Sql Server 2005数据库不正常中断,当再次打开数据库时会发觉某些数据库会被标记为“可疑”(suspect),即在数据库名旁加上了黄色的惊叹号,这时数据库就不能再被打开了,但数据库的结构及数据内容都还是存在的处理要领当数据库发生这种操作故障时,可以按如下操作步骤可处理此要领,打开数据库里的Sql 查询编辑器窗口,运行以下的命令●修改数据库为紧急模式ALTER DATABASE Sharepoint_Config SET EMERGENCY●使数据库变为单用户模式ALTER DATABASE Sharepoint_Config SET SINGLE_USER●修正数据库日志重新生成,此命令检查的分配,结构,逻辑完整性和所有数据库中的对象不正确。
当您指定“REPAIR_ALLOW_DATA_LOSS”作为DBCC CHECKDB命令参数,该程序将检查和修正报告的不正确。
但是,这些修正可能会导致一些数据丢失。
DBCC CheckDB (Sharepoint_Config , REPAIR_ALLOW_DATA_LOSS●使数据库变回为多用户模式ALTER DATABASE Sharepoint_Config SET MULTI_USER●开始->运行->输入cmd->打开DOS命令窗口,输入以下命令重启数据库服务Net stop mssqlserver --停止服务Net start mssqlserver --启动服务再次,打开Sql Server 2005时被标记为“可疑”的数据库已还原正常状态ALTER DATABASE v5_dl_g SET EMERGENCYALTER DATABASE v5_dl_g SET SINGLE_USERDBCC CheckDB (v5_dl_g , REPAIR_ALLOW_DATA_LOSS)ALTER DATABASE v5_dl_g SET MULTI_USER2SQL Server数据库文件恢复及数据库置疑SQL Server 2000数据库不知什么原因变成置疑,在企业管理器里面看是置疑,在DATA 里面有MDF和LOG这两个文件,换一台机器附加时报错:备份数据文件,然后按以下的步骤来进行处理:1.新建一个同名的数据库(数据文件与原来的要一致)2.再停掉sql server(注意不要分离数据库)4.再重启sql server5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用数据库的脚本创建一个新的数据库,并将数据导进去就行了。
【SQL Server数据库】 SQL Server关系数据库管理系统
Microsoft SQL Server
2、SQL Server组-->双击打开你的服务器-->双击打开数
据库目录
3、选择你的数据库名称(如学生)-->然后点上面菜单
中的工具-->选择备份数据库
4、备份选项选择完全备份,目的中的备份到:如果原
9
第9页
SQL Server Management Studio工具
SQL Server Management Studio是一个集成的环境,用于访问、配 置、控制、管理和开发SQL Server的所有工作。
已注册的服务器 对象资源管理器
摘要页
模板资源管理器
解决方案资源管理器
2021年7月19日
图 SQL Server Management Studio工具组件
事件处理信息、数据备份及恢复信息和警告及异常信息。
17
➢ 3. Model数据库 ➢ Model数据库的主文件是model.mdf,日志文件为model.ldf。model
数据库用作在 SQL Server 实例上创建的所有数据库的模板。因为 每次启动 SQL Server 时都会创建 tempdb,所以 model 数据库必须 始终存在于 SQL Server 系统中。 ➢ 4. tempdb数据库 ➢ tempdb 数 据 库 的 主 文 件 名 和 日 志 文 件 名 分 别 为 tempdb.dbf 和 tempdb.ldf。tempdb数据库是一个共享的工作空间,SQL Server 2000中的所有数据库都可以使用它,它为临时表和其他临时工作 提供了一个存储区。
Integration Services是一个数据集成平台,负责完成有关数据的提取、 转换和加载等操作。Integration Services可以高效地处理各种各样的数据 源,例如SQL Server、Oracle、Excel、XML文档和文本文件等。
如何查询SQL Server备份还原历史记录
如何查询SQL Server备份还原历史记录SQL Server在msdb数据中维护了一系列表,用来存储执行所有备份和还原的细节信息。
即使你正在使用第三方的备份应用程序,只要这个应用程序使用SQL Server的虚拟设备接口(Virtual Device Interface---VDI)来执行备份和还原执行,那么执行细节依然被存储在这一系列表中。
存储细节的表包括:backupsetbackupfilebackupfilegroup (SQL Server 2005 upwards)backupmediasetbackupmediafamilyrestorehistoryrestorefilerestorefilegrouplogmarkhistorysuspect_pages (SQL Server 2005 upwards)你可以在Books Online里面找到上面这些表的具体说明。
下面这个脚本可以帮你找出每个数据库近期的备份信息:SELECT , a.type, MAX(a.backup_finish_date) lastbackupFROM msdb..backupset aINNER JOIN master..sysdatabases b ON a.database_name COLLATE DATAB ASE_DEFAULT = COLLATE DATABASE_DEFAUL TGROUP BY , a.typeORDER BY , a.type指定数据库最后20条事务日志备份信息:SELECT TOP 20 b.physical_device_name, a.backup_start_date, a.first_lsn, er_name FROM msdb..backupset aINNER JOIN msdb..backupmediafamily b ON a.media_set_id = b.media_se t_idWHERE a.type = 'L'ORDER BY a.backup_finish_date DESC指定时间段的事务日志备份信息:SELECT b.physical_device_name, a.backup_set_id, b.family_sequence_num ber, a.position, a.backup_start_date, a.backup_finish_dateFROM msdb..backupset aINNER JOIN msdb..backupmediafamily b ON a.media_set_id = b.media_se t_idWHERE a.database_name = 'AdventureWorks'AND a.type = 'L'AND a.backup_start_date > '10-Jan-2007'AND a.backup_finish_date < '16-Jan-2009 3:30'ORDER BY a.backup_start_date, b.family_sequence_number删除备份日志的两个存储过程:EXEC msdb..sp_delete_backuphistory '1-Jan-2005'EXEC msdb..sp_delete_database_backuphistory 'AdventureWorks'本文翻译自sqlbackuprestore,更多精彩内容请浏览http://www.sqlbackuprestore. com。
SQL_Server_2005数据库T备份与恢复
13
数据库备份概述
(1)完整备份:
实验2:通过命令行进行完全数据备份实验
第一步:sp_addumpdevice 是系统存储过程,用于创建磁盘备份文件,其基本命 令行如下所示: sp_addumpdevice [@devtype=]'device_type',[@logicalname=]'logical_name',[ @physi calname = ] 'physical_name'[,{[@cntrltype = ] controller_type|[@devstatus=]'device_status' }]
注意:即便是C盘下面没有back文件夹,该命令也可以成功的执行。但是如果在实 际进行磁盘备份中,由于没有该文件夹,将在执行backup database的时候出现 14 错误。
数据库备份概述
(1)完整备份:
实验2:通过命令行进行完全数据备份实验
第二步:将school数据库备份到第一步建立的磁盘备份文件中。 BACKUP DATABASE{database_name|@database_name_var} <file_or_filegroup> [ ,...f ] TO <backup_device> [ ,...n ] ..[[,]{INIT|NOINIT}]
19
数据库备份概述
(2)差异备份:
实验2:在管理平台中进行差异数据备份实验
打开备份向导。在“备份数据库” 窗口中,选择备份类型为“差异”。 在备份的目标中,指定备份到的磁 盘文件位置(本例中为 C:\back\school.bak文件),如 图所示。然后单击“确定”按钮。 备份完成后,可以找到 C:\back\school.bak文件。差异 备份文件要比完全备份文件小得多, 因为它仅备份自上次完整备份后更 改过的数据。
为备份或还原操作指定的设备
为备份或还原操作指定的设备太多;只允许指定64个设备。
RESTORE DATABASE 操作异常终止。
当还原数据库时,如果出现“为备份或还原操作指定的设备太多;只允许指定64个设备。
RESTORE DATABASE操作异常终止。
”这个错误时,说明你是在把从SQLServer2005上备份的数据还原到SQLServer2000数据库上。
出现这个错误:1.并不说明你的电脑系统有问题(不用重装系统)。
2.你的SQLServer2005或SQLServer2000数据库安装的有问题(不用重装数据库)。
3.不用破口大骂微软垃圾。
很简单,只要你连接上SQLServer2005的SQLEXPRESS实例。
在SQLServer2005库上还原即可。
下载SQL Server Management Studio Express软件,这是用于连接管理SQLServer2005的工具。
可以帮助你还原数据库,强调一下,虽然使用SQL Server Management Studio Express这个工具了,SQLEXPRESS这个实例才是你要连接的2005数据库(.\SQLEXPRESS)。
而不是(.)或(local),如果是(.)或(local)说明你没有连接上SQLServer2005数据库,还会报错,必须确信你真正连接上了SQLServer2005数据库。
最后总结一下:SQLServer2005和SQLServer2000的备份是不能通用的,因此,当还原数据库时不能搞混,特别是,当从网上下载一些源代码,有些数据库的备份,没有注明是2005还是2000的,当出现以上错误时,说明你是在把从SQLServer2005上备份的数据还原到SQLServer2000数据库上。
需要注意一下。
Sqlserver数据库备份与还原
Sqlserver数据库备份与还原⼀、数据库存储概述1、数据⽂件类型· Primary data files:每个数据库都有⼀个单独的主要数据⽂件,默认以.mdf扩展名。
主要数据⽂件不仅包含数据信息,还包含与该数据库结构相关的信息。
创建数据库时,数据库结构相关信息不仅存在于master数据库中,同时还包含在primary data file上.· Secondary data files⼀个数据库可以有⼀个或者多个⼆级数据⽂件,默认以.ndf为扩展名。
⼀般来说⼆级数据⽂件并不是必须的,因为⼆级数据⽂件不包含⽂件位置等信息。
· Transaction logs: 数据库必须⾄少有⼀个事务⽇志⽂件,默认以.ldf为扩展名。
⽇志是整个数据库的命脉,事务⽇志不可读的话,将⽆法对数据库进⾏任何操作。
当你在数据库上进⾏数据操作时,数据并不是直接写⼊数据⽂件,⽽是先将相关操作信息写⼊事务⽇志⽂件。
当⼀个事务结束时,该事务被标记为已提交,但这也并不意味着数据从⽇志⽂件写⼊了数据⽂件中。
⼀个标记为已提交的事务仅仅意味着所有与该事务相关的元素已经成功完成。
The buffer cache may be updated, but not necessarily the data file.检查点(checkpoint)会周期性的发⽣。
检查点发⽣时,是确认所有已提交的事务,不管是在buffer cache或者事务⽇志中,都被写⼊相关的数据⽂件中。
检查点(checkpoint)可以通过以下⽅式来触发:1、显⽰调⽤checkpoint命令;2、Recover Interval 实例设置的周期达到(⽤来标识多久发⽣⼀次checkpoint)3、做了数据库备份(在简单模式下);4、数据库⽂件结构被改变(在简单模式下);5、数据库引擎被结束。
⼀般来说,写数据的过程是由系统⾃动完成的,如下图所⽰,但数据并不是直接写⼊.mdf或者.ndf ⽂件中,⽽是先将有关变化写⼊事务⽇志中,这也是数据库中的write-ahead机制。
SQL 2005 备份和还原 图解
一、数据库备份 (1)
二、数据库还原 (7)
一、数据库备份
1 先打开SQL Server 2005
2 选中要备份的数据,点击右键,选择任务—>备份
3 点击添加,选择存放数据库备份文件的地址
4 在弹出对话框中,点击图示按钮,选择存放数据库备份文件的地址
5点击选项,进行备份设置,设置完成,点击确定,开始备份
二、数据库还原
1 先打开SQL Server 2005
2 选中要备份的数据,点击右键,选择任务—>还原
3在弹出对话框中,选择源设备,点击后面的按钮,弹出指定备份对话框,点击添加按钮,选择.bak源文件,找到后,点击确定
4 选择选项,进行还原设置,“覆盖现有数据”前面的小方框打勾; 点击“还原为”后面的按钮,要还原该数据库的数据文件和日志文件
5选定好要还原的数据文件和日志文件之后,点击“确定”按钮,完成数据库还原。
Sqlserver2005数据备份还原恢复常用方法
SQLSERVER2005数据库备份、还原及数据恢复内容一、目的说明-------------------------------------------------------------------- 错误!未定义书签。
二、备份数据库步骤 ----------------------------------------------------------- 错误!未定义书签。
三、还原数据库步骤 ----------------------------------------------------------- 错误!未定义书签。
四、数据库数据恢复步骤------------------------------------------------------ 错误!未定义书签。
五、数据库压缩 ----------------------------------------------------------------- 错误!未定义书签。
六、常见异常处理 -------------------------------------------------------------- 错误!未定义书签。
七、总结 ------------------------------------------------------------------------- 错误!未定义书签。
八、附录:----------------------------------------------------------------------- 错误!未定义书签。
一、目的说明数据库备份是维护数据正确,防止数据丢失的重要手段。
备份点恢复策略可以让数据还原到备份点,通过触发备份的方法,可以提高备份的有效性;采用即时点备份策略,可将数据恢复到任意点,提高数据的安全性;通过性能警报监视事务日志使用情况,及时优化日志文件,可以提高系统性能。
SQL Server 2005数据库实践教程
维 护 可用性
试运行
7
SQL sever2005的优势
数据库引擎是整个数据库的核心,负责处理数据的存取异动处理,新增 XML的数据类型的处理能力。从一般应用程序到企业级的解决方案都可以 藉此获得解决。全新的SQL Server 2005的数据库引擎,有以下强化的 要项。 1、分割技术: 针对大型数据表与索引建立时,藉由分割函数与分割配置,将不同数据区分 到不同的档案群组,再经由硬件的辅助加速存取。此外,分割技术可以避 免在巨大资料表中进行整个索引的重整,减轻管理的负担。 2、DDL触发程序与事件通知 如何稽核服务器的使用者动作与如何防止数据库对象意外发生,一直都是 DBA非常重视的问题,新一代的数据库引擎可以针对数据定义语言(DDL) 提供触发程序的撰写。事件通知的功能就是整合Service Broker组件, 让DDL的动作藉由Service Broker辅助,使用异步处理的方式进行作业。
5、全新T-SQL
数据库引擎除了支持SQL-92的标准语法之外,更支持许多SQL-1999新的语法,例 如Try…Catch、PIVOT、Common Table Expression、EXCEPT与INTERSECT 等语法,它可以简单化复杂的处理。此外也统一DDL的所有语法,例如登入账号、 使用者建立的DDL语法等。
15
2.1 SQL Server 2005简介
SQL Server 2005 与 Oracle 的效能比较
16
2.2 SQL Server 的定义和数据库基本结构
关系模型的数据库管理系统 客户/服务器(Client/Server)的服务模型 完善的数据库逻辑和物理结构 与.NET框架的完美结合
22
2.4 SQL Server 是通过实例运行的
SQL还原数据库后孤立用户问题处理(SQL 数据库 拥有对象 无法删除)
SQL还原数据库后孤立用户问题处理(SQL 数据库拥有对象无法删除)2008-10-10 01:37所谓孤立帐户,就是某个数据库的帐户只有用户名而没有登录名,这样的用户在用户库的sysusers系统表中存在,而在master数据库的syslogins中却没有对应的记录孤立帐户的产生一般是一下两种:1.将备份的数据库在其它机器上还原;2.重装系统或SQL SERVER之后只还原了用户库解决方法是使用sp_change_users_login来修复sp_change_users_login的用法有三种用法1:exec sp_change_users_login 'REPORT'列出当前数据库的孤立用户用法2:exec sp_change_users_login 'AUTO_FIX','用户名'可以自动将用户名所对应的同名登录添加到syslogins中用法3:exec sp_change_users_login 'UPDATE_ONE','用户名','登录名'将用户名映射为指定的登录名----------------------------------------------------------------------------------------------------------------看看是否有用SQL孤立用户解决方案症状当您将数据库备份恢复到另一台服务器时,可能会遇到孤立用户的问题SQL Server 联机丛书中的孤立用户疑难解答主题中没有讲述解决此问题的具体步骤本文介绍了如何解决孤立用户问题状态Microsoft 已经确认这是在本文开头列出的 Microsoft 产品中存在的问题更多信息虽然术语登录和用户经常交换使用,但它们之间有很大的不同登录用于用户身份验证,而数据库用户帐户用于数据库访问和权限验证登录通过安全识别符 (SID) 与用户关联访问 SQL Server 服务器需要登录验证特定登录是否有效的过程称为身份验证登录必须与 SQL Server 数据库用户相关联您使用用户帐户控制数据库中执行的活动如果数据库中不存在针对特定登录的用户帐户,使用该登录的用户即使能够连接到 SQL Server 服务器,也无法访问数据库但是,该情形的唯一例外是当数据库包含guest用户帐户时与用户帐户不关联的登录将被映射到guest 用户相反,如果存在数据库用户,但没有与其关联的登录,则该用户将无法登录到 SQL Server 服务器中将数据库恢复到其他服务器时,数据库中包含一组用户和权限,但可能没有相应的登录或者登录所关联的用户可能不是相同的用户这种情况被称为存在孤立用户孤立用户疑难解答当您将数据库备份恢复到另一台服务器时,可能会遇到孤立用户的问题以下情形说明了该问题并阐述如何加以解决1. 向主数据库添加一个登录,并将默认数据库指定为 Northwind: Use master go sp_addlogin 'test', 'password', 'Northwind'2. 向刚创建的用户授予访问权限: Use Northwind go sp_grantdbaccess 'test'3. 备份数据库 BACKUP DATABASE NorthwindTO DISK = 'C:MSSQLBACKUPNorthwind.bak'4. 将数据库恢复到其他 SQL Server 服务器: RESTORE DATABASE Northwind FROM DISK = 'C:MSSQLBACKUPNorthwind.bak'恢复的数据库包含名为test的用户,但没有相应的登录,这就导致test成为孤立用户5. 现在,为了检测孤立用户,请运行此代码: Use Northwind gosp_change_users_login 'report'输出中列出了所有登录,其中包含 Northwind 数据库的 sysusers 系统表和主数据库的 sysxlogins 系统表中不匹配的条目解决孤立用户问题的步骤1. 为前一步中的孤立用户运行以下命令:Use Northwindgosp_change_users_login 'update_one', 'test', 'test'这样,就将服务器登录test与 Northwind 数据库用户test重新连接起来sp_change_users_login 存储过程还可以使用auto_fix参数对所有孤立用户执行更新,但不推荐这样做,因为 SQL Server 会尝试按名称匹配登录和用户大多数情况下这都是可行的;但是,如果用户与错误登录关联,该用户可能拥有错误的权限2. 在上一步中运行代码后,用户就可以访问数据库了然后用户可以使用sp_password 存储过程更改密码: Use mastergosp_password NULL, 'ok', 'test'此存储过程不能用于 Microsoft Windows NT 安全帐户通过 Windows NT 网络帐户连接到 SQL Server 服务器的用户是由 Windows NT 授权的;因此,这些用户只能在 Windows NT 中更改密码只有 sysadmin 角色的成员可以更改其他用户的登录密码----------------------------------------------------------------------------------------------------------------SQL2005删除用户的时候,产生数据库主体在该数据库中拥有架构,无法删除的解决办法--执行如下SQL语句ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo;--然后手动删除就可以了----------------------------------------------------------------------------------------------------------------[导入]sql2000备份的数据库还原到sql2005后,选择数据库关系图提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法sql2000备份的数据库还原到sql2005后,选择数据库关系图提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象若要继续,请首先使用数据库属性对话框的文件页或 ALTER AUTHORIZATION 语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象解决方法如下:1设置兼容级别为90(2005为90)USE [master]GOEXEC dbo.sp_dbcmptlevel @dbname='数据库名', @new_cmptlevel=90GO或是选责你还原的数据库,点右键,选属性->选项->兼容级别,选择sqlserver2005(90) 然后确定,这时,你在该数据库下展开数据库关系图节点时会有个提示,"此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择是即可2通过以上的方法操作,如果问题依然存在的话,按下列方法继续选择你的数据库,然后选择"安全性"->"用户",选择dbo,打开属性页,如登录名为空的话,新建查询,然后use [你的数据库名]EXEC sp_changedbowner 'sa'执行成功后,你再选择"数据库关系图"节点,时提示此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择是即可就可以看到原先建的关系图了----------------------------------------------------------------------------------------------------------------从服务器上作导入导出至本地机上,数据库中的表都在,可是表名前段的架构身份不是dbo了,而是服务器上数据库的库名这样架构身份不同了,程序运行就出问题了试过单个修改表,在sql2005的属性窗口可以更改架构者,可是N多表哪儿能手动改得过来呀!还请高手指点批量更改的方法在此谢过SQL Server2005可以使用系统存储过程sp_changeobjectowner更改数据库对象的所有者sp_changeobjectowner '对象名(包括架构名)','新架构名'批量修改请用:方法一:使用游标declare @name sysnamedeclare csr1 cursorforselect TABLE_NAME from INFORMATION_SCHEMA.TABLESopen csr1FETCH NEXT FROM csr1 INTO @namewhile (@@FETCH_STATUS=0)BEGINSET @name='原架构名.'+@nameEXEC SP_ChangeObjectOwner @name, '新架构名' fetch next from csr1 into @nameENDCLOSE csr1DEALLOCATE csr1方法二:使用系统存储过程sp_MSforeachtableEXEC sp_MSforeachtable @command1="EXEC SP_ChangeObjectOwner ' ?','新架构名'"----------------------------------------------------------------------------------------------------------------在sql server 2005数据库中更改数据架构在数据库testDB中存在架构A及用户A,现将testDB数据库所属的用户由A改为B,同时删除用户A;架构也由A改为B,删除架构A,操作如下:1创建用户B,再创建架构B;2将架构A的权限赋给用户B,取消用户A拥有架构A的权限,删除用户A;3将数据库的所有属于架构A的对象改为架构B,代码如下:ALTER SCHEMA [新架构名] TRANSFER 旧架构名.[数据库中的对象表或视图或存储过程]ALTER SCHEMA [B] TRANSFER A.[对象1]ALTER SCHEMA [B] TRANSFER A.[对象2]ALTER SCHEMA [B] TRANSFER A.[对象n]4删除架构A。
第八章 SQL Server 2005数据库管理
20112011-2-25
主讲:王颂华
11
20112011-2-25
主讲:王颂华
4
8.2 SQL Server 2005数据库 2005数据库 ALTER DATABASE database_name 操作 { ADD FILE <filespec> [ ,...n ]
[TO FILEGROUP {filegroup_name | DEFAULT} ] | ADD LOG FILE <filespec> [ ,...n ] | REMOVE FILE logical_file_name | MODIFY FILE <filespec>} <filespec>::= ( NAME = logical_file_name [ , NEWNAME = new_logical_name] [ , FILENAME = 'os_file_name’] 'os_file_name’ [ , SIZE = size [KB | MB | GB | TB]] [ , MAXSIZE = {max_size [KB | MB | GB | TB] | UNLIMITED } ] [ , FILEGROWTH = growth_increment [KB | MB | GB | TB| %] ] [ , OFFLINE]) <add_or_modify_filegroups>::= { | ADD FILEGROUP filegroup_name | REMOVE FILEGROUP filegroup_name | MODIFY FILEGROUP filegroup_name {<filegroup_updatability_option> | DEFAULT 20112011-2-25 主讲:王颂华 | NAME = new_filegroup_name }}
sql server 2005 备份数据库的方法
SQL Server 2005是Microsoft SQL Server系列数据库管理系统的一个版本,它提供了丰富的功能和工具来帮助用户管理数据库。
其中备份数据库是数据库管理中的重要操作之一,它可以帮助用户在数据库发生故障或数据丢失的情况下及时恢复数据。
本文将介绍SQL Server 2005备份数据库的方法,包括全备份、差异备份和日志备份等。
一、全备份1. 全备份是指将整个数据库的所有数据和日志都备份到一个文件中,它是数据库备份中最基本的一种类型。
全备份的操作方法如下:a. 打开SQL Server Management Studio,连接到目标数据库服务器。
b. 在“对象资源管理器”中,选择要备份的数据库,右键单击该数据库,选择“任务”->“备份”。
c. 在弹出的“备份数据库”对话框中,选择“完整”,并指定备份文件的位置和名称。
d. 点击“确定”按钮,开始执行全备份操作。
二、差异备份2. 差异备份是指将自上次全备份或差异备份以来所做的更改备份到一个文件中,它可以减少备份时间和备份文件的大小。
差异备份的操作方法如下:a. 打开SQL Server Management Studio,连接到目标数据库服务器。
b. 在“对象资源管理器”中,选择要备份的数据库,右键单击该数据库,选择“任务”->“备份”。
c. 在弹出的“备份数据库”对话框中,选择“差异”,并指定备份文件的位置和名称。
d. 点击“确定”按钮,开始执行差异备份操作。
三、日志备份3. 日志备份是指备份数据库事务日志的操作,它可以帮助用户恢复到某个特定的事务点。
日志备份的操作方法如下:a. 打开SQL Server Management Studio,连接到目标数据库服务器。
b. 在“对象资源管理器”中,选择要备份的数据库,右键单击该数据库,选择“任务”->“备份”。
c. 在弹出的“备份数据库”对话框中,选择“日志”,并指定备份文件的位置和名称。
ERP数据备份和还原
ERP数据备份和还原ERP实验室SBO2005 和SQL SERVER2005的使用由于机器还原卡的存在,每次开机都要启动服务,加载自己的数据库文件。
一、启动服务。
1.控制面板——管理工具——服务——sql server(sqlexpress)的属性先停止服务,再进行更改——登录——本地系统帐户,允许服务与桌面交互。
再启动服务。
2.Sql server management studio express——将Server name的名字改为当前电脑的名称及其服务器名,以windows authentication 登录,点连接即可。
二、数据库的还原1.将自己上次备份的数据库文件,拷贝到硬盘上。
2. 点击database右键,新建数据库,名称与上次备份的数据库名称相同,也可以取任意名称,不与现有的数据库重名即可。
点击“OK”,创建数据库aaaa. 3.还原自己的数据库。
在弹出如图所示的界面后,点击“Add”,添加自己的数据库文件。
在option选项中,选中“覆盖现有数据库”。
点击“OK”,完成数据库的恢复工作。
还原后,有可能会找不到许可服务。
在license server里把port number重新set 一下即可。
三、打开SBO软件,更改公司,并刷新数据库。
1.打开SBO,更改公司。
更改服务器,选择“信任连接”。
进入北京海诚电子有限公司,默认的用户名和密码皆为空。
2.新建公司时,注意系统日期、软件日期和过账日期的一致性。
四、关机前,将数据库进行备份1.找到要备份的数据库,点击“backup”。
2. 点击Add,添加自己要备份的路径和文件名称。
3.将备份文件拷贝带走。
机器关机后将对C、D硬盘上的东西进行还原。
SQLSERVER数据库、表的创建及SQL语句命令
Alter table teacher add primary key(TeacherID);
Alter table teacher add primary key(TeacherID);
创建数据表时,加主键的不同方式:
MySQL:
CREATE TABLE Customer
强制还原SQL数据库:
[其中,Test-3d是已存在的数据库,3D-FEP_data和3D-FEP_log为备份数据库的两个逻辑文件,]
restoredatabase[Test-3d]
fromdisk='d:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Backup\3D-DATA_backup_20131017.bak'
2、操作SQL2008数据库的命令
备份SQL数据库:
backupdatabase[3D-DATA]/*原数据库*/todisk='D:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\backup\3D-DATA_backup_20131017.bak/*数据库备份文件*/'
MOVE 'DBTest_log' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DBTest_log.ldf'
GO
六、
SQL Server数据库文件恢复技术yzhshi(yzhshi@) SQL Server数据库备份有两种方式:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL Server 2005“备份集中的数据库备份与现有的数据库不同”解决方法收藏
以前一直使用SQL Server2000,现在跟潮流都这么紧,而且老师制定要求使用SQL Server2005,就在现在的项目中使用它了。
对于SQL Server 2005,有几个地方是要注意的,比方在还原数据库时,不像2000里边将数据库和文件区分的很细,统一均为文件,这就使还原的数据库文件制定为.bak。
那么想还原2000的数据库(备份数据库文件,无后缀名的),就需要自己手工选择。
选择下拉框中的“所有文件”,这时就会显示“备份数据库文件”了,选择-确定:
最主要就是要在“选项”中选择“覆盖现有数据库”,否则就会出现“备份集中的数据库备份与现有的数据库”的问题。