创建链接服务器可以用“企业管理器”,也可以执行系统存储过程 sp_addlinkedserver 来完成。用系统存储过程相对快捷一些,格式为:
sp_addlinkedserver '链接服务器名', '产品名', 'MicrosoftJetOLEDB40', 'Access数据库路径及文件名'
指定 MicrosoftJetOLEDB40 作为 provider_name,指定 Access 数据库文件的完整路径名作为 data_source。mdb 数据库文件必须驻留在本地服务器上,路径必须是服务器上的有效路径。
例如,本例创建一个名为 mytest 的链接服务器,对 E:\我的文档\ 文件夹下名为 DOSmdb 的 Access 数据库进行 *** 作,则在“SQL查询分析器”中执行:
sp_addlinkedserver 'mytest', 'Access 2000', 'MicrosoftJetOLEDB40', 'E:\我的文档\DOSmdb'
二、创建链接服务器登录映射
同样可以用“企业管理器”或存储过程来完成。存储过程的格式为:
sp_addlinkedsrvlogin '链接服务器', false, 'SQLServer登录名', 'admin', NULL
为访问非保密的 Access 数据库,试图访问 Access 数据库的 SQL Server 登录应该有一个为用户 Admin 定义的没有密码的登录映射,下例使得本地用户 sa 可以访问名为 mytest 的链接服务器:
sp_addlinkedsrvlogin 'mytest', false, 'sa', 'admin', NULL
要访问保密的 Access 数据库,需使用注册表编辑器配置注册表,以便使用 Access 的正确的工作组信息文件。使用注册表编辑器向该注册表项中添加 Access 使用的工作组信息文件的完整路径名称:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\40\Engines\SystemDB
配置了注册表项后,请使用 sp_addlinkedsrvlogin 创建从本地登录到 Access 登录的登录映射:
sp_addlinkedsrvlogin 'mytest', false, 'sa', '[AccessUser]', '[AccessPwd]'
链接服务器和链接服务器登录映射建立完毕,可以在企业管理器里进行查看。
三、链接服务器的测试
可以在“SQL查询分析器”里对创建的链接服务器进行测试。由于 Access 数据库没有目录和架构名称,因此,基于 Access 的链接服务器中的表可以在分布式查询中使用 [linked_server][table_name] 的四部分名称进行引用。下例从名为 mytest 的链接服务器中检索 articles 表的所有行:
Select from mytestarticles
或:Select from OpenQuery(mytest, 'Select from articles')USE pubs
在没有再次使用USE语句来改变当前数据库以前,后面的每一行 *** 作语句都将针对pubs数据库执行。使用系统存储过程sp_helpdb可以查看当前服务器上所有数据库的信息,如果指定了数据库的名字则返回指定数据库的信息。
使用系统存储过程sp_databases可以查看当前服务器上所有可以使用的数据库。
使用系统存储过程sp_helpfile可以查看当前数据库上所有文件(包括数据文件和日志文件)的信息。如果指定了文件的名字,则返回该文件的信息。
使用系统存储过程sp_helpfilegroup可以查看当前数据库上所有文件组,包括Primary文件组和User_defined文件组的信息。如果指定了文件组的名字,则返回该文件组的信息。
可以使用企业管理器来查看更详细的有关数据库的信息,方法是:
(1) 选中要查看的数据库。
(2) 从 *** 作菜单或快捷菜单中选择属性命令,d出如图34所示的对话框。从中可以查看或者修改数据文件、日志文件、文件组及使用权限等属性。
图34 数据库的属性查看
34 管理数据库
创建好数据库,也许使用一段时间之后,发现此数据库的文件容量不敷使用、此数据库已经有一段时间不用了等相关事情发生时,就必须要针对数据库来进行管理。
341 修改数据库大小
SQL Server 2000的数据文件可以自动扩充长度,所以数据库的大小也会自动增加。但是如果设置了最大文件长度,则数据库的扩充依然是有必要进行的 *** 作。修改数据库的大小实质上是修改数据文件和日志文件的长度,或者增加/删除 *** 作系统文件。这种 *** 作可以通过下面的语法来实现:
ALTER DATABASE database
{ ADD FILE <filespec> [,n] [TO FILEGROUP filegroup_name]
| ADD LOG FILE <filespec> [,n]
| REMOVE FILE logical_file_name
| ADD FILEGROUP filegroup_name
| REMOVE FILEGROUP filegroup_name
| MODIFY FILE <filespec>
| MODIFY FILEGROUP filegroup_name filegroup_property
}
<filespec> ::=
(NAME = logical_file_name
[, FILENAME = 'os_file_name' ]
[, SIZE = size]
[, MAXSIZE = { max_size | UNLIMITED } ]
[, FILEGROWTH = growth_increment] )
下面的例子在Company数据库的默认文件组Primary文件组里,增加了一个数据文件。
ALTER DATABASE Company
ADD FILE
(
NAME = Test1dat2,
FILENAME = 'e:\program files\Microsoft sql server\mssql\data\t1dat2ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB
)
GO
下面的例子在Company数据库的ComGroup1文件组里增加了两个数据文件,并将该文件组设置为默认文件组。
ALTER DATABASE Company
ADD FILE
( NAME = test1dat3,
FILENAME ='e:\program files\Microsoft sql server\mssql\data\t1dat3ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB),
( NAME = test1dat4,
FILENAME = 'e:\program files\Microsoft sql server\mssql\data\t1dat4ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB)
TO FILEGROUP ComGroup1
ALTER DATABASE Company
MODIFY FILEGROUP ComGroup1 DEFAULT
GO
下面的例子将Company数据库中test1dat3数据文件的长度改变为20MB。
ALTER DATABASE Company
MODIFY FILE
(NAME = test1dat3,
SIZE = 20MB)
GO
同样的 *** 作可以在企业管理器中进行,方法如下。
(1) 选中要查看的数据库。
(2) 从主菜单或快捷菜单中选择属性命令,d出如图34 所示对话框。
(3) 在数据文件选项卡中增删数据文件或对其属性进行修改。
(4) 在事务日志选项卡上增删日志文件或对其属性进行修改。
342 收缩数据库
SQL Server 2000数据库在长时间使用后数据文件和日志文件会非常庞大,同时删除了大量的数据后,数据文件的大小并没有自动变小。SQL Server 2000提供了手段来缩小过于庞大的数据库,以回收没有使用的数据页。可以用手动的方法单独缩小某一个数据文件,也可以缩小整个文件组的长度。还可以设置数据库在达到一定大小之前自动执行缩小 *** 作。
使用企业管理器完成缩小数据库的方法如下。
(1) 从指定服务器上展开数据库节点,选中要执行缩小 *** 作的数据库。
(2) 从快捷菜单中选择所有任务|收缩数据库命令,d出如图35所示的对话框。
图35 缩小数据库
选择执行数据库缩小 *** 作的方式:
l 收缩后文件中的最大可用空间微调框 在进行过数据库收缩后,文件中还可以利用的空间。
l 在收缩前将页移到文件起始位置复选框 把含有数据的数据页都移动到文件的开头。
l 收缩文件选项组 为了进行更精确的文件大小控制,针对每个单独的数据库文件进行收缩,具体方法是:单击文件按钮,d出如图36所示的对话框。
图36 针对文件进行收缩
可以在这个对话框中选择针对文件执行收缩 *** 作的不同方式,也可以设置执行收缩 *** 作的时间,把执行数据库收缩的时间安排在数据库存取不那么频繁的时段。
343 备份数据库
数据对于用户来说是非常宝贵的资产。数据是存放在计算机上的,但是即使是最可靠的硬件和软件,也会出现系统故障或产品故障。所以,应该在意外发生之前做好充分的准备工作,以便在意外发生之后有相应的措施能快速地恢复数据库的运行,并使丢失的数据量减少到最小。
通过企业管理器来备份数据库的 *** 作如下:
(1) 选中指定的数据库,选择工具|备份数据库命令,d出如图37所示的对话框。
图37 进行数据库备份
(2) 在该对话框可以更换需要备份的数据库,输入备份的名字和对备份的描述,选择备份的类型。
(3) 单击添加按钮选择要备份的设备,如图38所示。
图38 选择备份设备
在这个对话框中可以创建新的备份设备。用户可以一次选择多个设备,将数据库备份到多个设备上。也可以将数据库备份到指定的文件。
(4) 在图37所示的对话框的重写选项组里,选择在设备上进行 *** 作的方式,可以选择追加到媒体单选按钮,将新的备份添加到备份设备中以前备份的后面(不影响原来的备份);也可以选择重写现有媒体单选按钮,用新的备份覆盖原来的备份。
(5) 选中调度复选框,用户可以拟订自动进行备份 *** 作的时间,单击右边的按钮用户可以自主设计自动进行备份 *** 作的时间,如图39所示。完成设置后单击确定按钮,回到数据库备份界面。
图39 设置自动备份
(6) 单击确定按钮,完成备份 *** 作。
344 恢复数据库
使用SQL Server 2000可以很方便地实现数据库的恢复,步骤如下。
(1) 选中指定的数据库,选择工具|还原数据库命令,d出对话框如图310所示的对话框。
图310 还原数据库
(2) 可以选择要进行还原的数据库。在参数选项组中,用户可以选择利用哪个数据库备份来执行数据库的恢复 *** 作。如果是利用事务日志来进行恢复,还可以选择恢复数据库到某一指定时刻的状态。如果是从设备(文件)恢复数据库,可以在还原选项中选择从设备单选按钮,如图311所示。
图311 从设备还原数据库
单击选择设备按钮,如图312所示。单击添加按钮可以选择还原的文件名称。完成后单击确定按钮。
图312 选择设备
(3) 单击确定按钮完成数据库的恢复。
1、打开Microsoft SQL Server 2012,选中需要查询所有表的数据库。
2、选中需要查询的表后,点击左上角的“新建查询”,如图。
3、点击“新建查询”后,会在右边d出一个编辑框,我们需要在这里编写sql语句,来查询该数据库下的所有表结构。
4、编写sql语句,点击“执行”,当然,这表语句我们可以根据实际情况,来改变条件只查询需要的表名。
5、这时,会在右下方出现最终的查询结果,name即该库下所有的表名。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)