我以前发过一个关于这个的帖子 还有些 不明白
我是在一家医药公司上班 我们单位最近要换服务器 以下是论坛一位大哥告诉我的 我这里有几个不明白的 还请大家帮帮忙
新服务器-装系统-装sql-设置用户名和密码与原服务器一致-将原服务器的sql备份-拷贝备份到新服务器-新服务器上新建库与原服务器同名-还原数据库-新服务器装医药软件-设置软件与数据库的连接-ok在 这步 将原服务器的sql备份-拷贝备份到新服务器 小弟就不行了 请问 原服务器的 SQL需要备份的东西在哪个目录里面小弟刚接触SQL 不明白 还有 怎样在 新的服务器里去还原以前的备份呢 万分感谢还有一个重要的就是 怎样 设置软件与数据库的连接 安装完这个软件怎么能和 数据库连接呢? 谢谢了!
我是在一家医药公司上班 我们单位最近要换服务器 以下是论坛一位大哥告诉我的 我这里有几个不明白的 还请大家帮帮忙
新服务器-装系统-装sql-设置用户名和密码与原服务器一致-将原服务器的sql备份-拷贝备份到新服务器-新服务器上新建库与原服务器同名-还原数据库-新服务器装医药软件-设置软件与数据库的连接-ok在 这步 将原服务器的sql备份-拷贝备份到新服务器 小弟就不行了 请问 原服务器的 SQL需要备份的东西在哪个目录里面小弟刚接触SQL 不明白 还有 怎样在 新的服务器里去还原以前的备份呢 万分感谢还有一个重要的就是 怎样 设置软件与数据库的连接 安装完这个软件怎么能和 数据库连接呢? 谢谢了!
go恢复时
restore database db_name from disk='文件路径' with replace
go但要注意一下数据库版本.能向下兼容,不能向上兼容.
那就不是SQLServer的问题了.
--数据库不存在时
--附加新的库
CREATE DATABASE 你的新库名
ON PRIMARY (FILENAME = 'c:\program files\microsoft sql server\mssql\data\你的新库的文件.mdf')
FOR ATTACH
GO
说明 MyNwind 数据库仅供举例说明。
下例显示还原完整数据库备份。RESTORE DATABASE MyNwind
FROM MyNwind_1B. 还原完整数据库备份和差异备份
下例还原完整数据库备份后还原差异备份。另外,下例还说明如何还原媒体上的另一个备份集。差异备份追加到包含完整数据库备份的备份设备上。RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH NORECOVERY
RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH FILE = 2C. 使用 RESTART 语法还原数据库
下例使用 RESTART 选项重新启动因服务器电源故障而中断的 RESTORE 操作。-- This database RESTORE halted prematurely due to power failure.
RESTORE DATABASE MyNwind
FROM MyNwind_1
-- Here is the RESTORE RESTART operation.
RESTORE DATABASE MyNwind
FROM MyNwind_1 WITH RESTARTD. 还原数据库并移动文件
下例还原完整数据库和事务日志,并将已还原的数据库移动到 C:\Program Files\Microsoft SQL Server\MSSQL\Data 目录下。RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH NORECOVERY,
MOVE 'MyNwind' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.mdf',
MOVE 'MyNwindLog1' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.ldf'
RESTORE LOG MyNwind
FROM MyNwindLog1
WITH RECOVERY
--创建测试数据库
CREATE DATABASE db
ON PRIMARY(
NAME='db_data',
FILENAME= 'c:\db_data.mdf'),
FILEGROUP db_fg1(
NAME = 'db_fg1_data',
FILENAME = 'c:\db_fg1_data.ndf'),
FILEGROUP db_fg2(
NAME = 'db_fg2_data',
FILENAME = 'c:\db_fg2_data.ndf')
LOG ON(
NAME='db_log',
FILENAME ='c:\db.ldf')
GO--在文件组db_fg1上创建表,并单独创建该文件组的备份
CREATE TABLE db.dbo.tb(id int) ON db_fg1
BACKUP DATABASE db FILEGROUP='db_fg1' TO DISK='c:\db_fg1.bak' WITH FORMAT
GO在其他文件组上创建表
CREATE TABLE db.dbo.ta(id int) ON [PRIMARY]
CREATE TABLE db.dbo.tc(id int) ON db_fg2
INSERT db.dbo.tb SELECT id FROM sysobjects
--备份每个文件组,并且备份事务日志
BACKUP DATABASE db FILEGROUP='PRIMARY' TO DISK='c:\db_primary.bak' WITH FORMAT
BACKUP DATABASE db FILEGROUP='db_fg1' TO DISK='c:\db_fg1_new.bak' WITH FORMAT
BACKUP DATABASE db FILEGROUP='db_fg2' TO DISK='c:\db_fg2.bak' WITH FORMAT
BACKUP LOG db TO DISK='c:\db_log.bak' WITH FORMAT
GO--删除数据库
DROP DATABASE db
GO--从文件组备份中恢复数据
RESTORE DATABASE db FILEGROUP='PRIMARY' FROM DISK='c:\db_primary.bak' WITH NORECOVERY,REPLACE
RESTORE DATABASE db FILEGROUP='db_fg1' FROM DISK='c:\db_fg1.bak' WITH NORECOVERY
RESTORE DATABASE db FILEGROUP='db_fg2' FROM DISK='c:\db_fg2.bak' WITH NORECOVERY
RESTORE LOG db FROM DISK='c:\db_log.bak' WITH RECOVERY
SELECT COUNT(*) FROM db.dbo.tb
GO--删除测试数据库
DROP DATABASE db
我是说 不能在服务器里直接 拷贝出来吗 不用输一些语法
还有 怎样 连接 医药软件和 SQL的数据库呢
也可以..
先把数据库服务给停掉.
然后将xx.mdf,,xx.ldf(如果还有xx.ndf给一并拷贝.)..
放到你的新服务器的指定目录里..
再进入企业管理器.对数据库按右键.所有任务,附加数据库.然后把文件选择上.就可以.至于连接数据库..这个使用ado等方法去连接.就方便了.
大哥谢谢 指点 ! 请问 如何使用ado等方法去连接. 新的医药软件呢!! T T 太感谢了
----------
方法:建一个库,用--创建链接服务器
exec sp_addlinkedserver 'ITSV','','SQLOLEDB','远程服务器名或ip地址'
exec sp_addlinkedsrvlogin 'ITSV','false',null,'用户名','密码'--查询示例
select * from ITSV.数据库名.dbo.表名--导入示例
select * into 表 from ITSV.数据库名.dbo.表名--以后不再使用时删除链接服务器
exec sp_dropserver 'ITSV','droplogins'--连接远程/局域网数据(openrowset/openquery/opendatasource)
--1、openrowset--查询示例
select * from openrowset('SQLOLEDB','sql服务器名';'用户名';'密码',数据库名.dbo.表名)--生成本地表
select * into 表 from openrowset('SQLOLEDB','sql服务器名';'用户名';'密码',数据库名.dbo.表名)--把本地表导入远程表
insert openrowset('SQLOLEDB','sql服务器名';'用户名';'密码',数据库名.dbo.表名)
select *from 本地表--更新本地表
update b
set b.列A=a.列A
from openrowset('SQLOLEDB','sql服务器名';'用户名';'密码',数据库名.dbo.表名)as a inner join 本地表 b
on a.column1=b.column1--openquery用法需要创建一个连接--首先创建一个连接创建链接服务器
exec sp_addlinkedserver 'ITSV','','SQLOLEDB','远程服务器名或ip地址'
--查询
select *
FROM openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名')
--把本地表导入远程表
insert openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名')
select * from 本地表
--更新本地表
update b
set b.列B=a.列B
FROM openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名') as a
inner join 本地表 b on a.列A=b.列A--3、opendatasource/openrowset
SELECT *
FROM opendatasource('SQLOLEDB', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码' ).test.dbo.roy_ta
--把本地表导入远程表
insert opendatasource('SQLOLEDB', 'Data Source=ip/ServerName;User ID=登陆名;Password=密码').数据库.dbo.表名
select * from 本地表
大哥你有MSN 或 QQ吗 !
在哪个目录是你自己定的.
数据是数据和日志文件,在C:\Program Files\Microsoft SQL Server\MSSQL$SQLSERVER2000\Data目录下.还有一个重要的就是 怎样 设置软件与数据库的连接 安装完这个软件怎么能和 数据库连接呢? 谢谢了!这个找软件的开放商来搞.
将数据文件(扩展名为.mdf)和日志文件(扩展名为.ldf)拷备至新服务器存放数据的目录,使用企业管理器下附加数据库任务即可,也可用以下语名进行附加:
EXEC sp_attach_db @dbname = N'pubs',
@filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf',
@filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'
这种方法操作较为简单,但附加后维护计划和作业都要重新做过.