数据库数据如何跨服务器迁移

数据库数据如何跨服务器迁移,第1张

开始菜单--->程序,打开SQL Server Management Studio(即我们的SQL 2005)

连接服务器后,找到我们需要迁移的数据,右键点击属性

数据库属性里面,点击文件,可查看数据库文件和数据库日志文件的存放路径

确定没有任何其它用户连接到此数据库后,点击该数据库-->任务-->分离

我们可以看到分离以后,刚刚那个数据库,已经不在此列表

进入刚刚我们第3步属性里面看到的数据库文件路径如下图把我们的ZNLCRMmdf数据库文件和ZNLCRM_LogLdf数据库日志文件拷贝到另外一台服务器

在另外台服务器上打开SQL数据库与第1步一样点击数据库--->附加

在附加数据库里面,点击添加,如下图所示

找到刚刚拷贝过来的ZNLCRMmdf文件选中该文件,依次点击确定(注意日志文件会自动一起加载过来)

然后我们就可以看到,一个完整的数据库就直接被迁移过来如下图

一、迁移Database Schema。
首先使用Sybase Powerdesigner的逆向工程功能,逆向出SQL Server数据库的物理模型。具体 *** 作是在Powerdesigner中选择“File”,“Reverse Engine”再选择Database,将DBMS选择为SQL Server
然后选择数据源,也就是要具体连接到的SQL Server数据库服务器,然后选择要逆向的数据库名,比如选中“WSS_Content_80”
单击确定即可生成物理模型图,然后单击“Database”菜单下的Change Current DBMS修改当前的DBMS,改为MySQL 50,单击确定后即可生成MySQL的物理模型 然后单击“Database”菜单下的“Generate Database”生成数据库脚本文件。
接下来手工修改下生成的脚本的内容。将其中的dbo全部替换成空,将create user这样的语句删除掉。
如果有些字符在MySQL中是关键字,那么必须使用“`”(键盘上数字1左边那个符合)符合框起来。
加上MySQL所需要的存储引擎比如每个建表语句后跟上:
ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_general_ci;将生成的脚本在MySQL中去运行一次即可创建数据库。
二、迁移数据内容
数据内容只能通过生成INSERT语句的方式来做。
首先使用SSMS的“生成脚本”功能(在数据库上右键,选择“任务”“生成脚本”选项),可以为SQL Server数据库中的数据生成插入脚本。
首先选择要迁移数据的表,这里我们全选所有的表
然后单击下一步,选择将脚本保存到新的查询窗口
单击“高级”选项,在高级选项窗口中选择“要编写脚本的数据的类型”为仅限数据
然后“确定”再下一步下一步即可生成INSERT脚本文件。
修改生成的脚本文件,主要有以下几项修改:
使用批量替换的方式去掉[ ]这是SQL Server的符合,在MySQL中不用这个。
使用批量替换的方式去掉dbo
有些单词在MySQL中是关键字的,那么需要使用“`”引起来。
关于Datetime类型的数据,需要手工修改下,SQL Server默认生成的是这样的语句,在MySQL中是没办法解析的:
CAST(0x00009EEF00000000 AS DateTime)
为每一行添加一个;表示一个插入语句结束。这个分号在SQL Server中可以不需要,但是在MySQL中是必须的。简单的方法是使用高级的文本编辑器(比如Notepad++),将\r\n替换为;\r\n即可。

首先,两台服务器如果可以连通,那么直接使用数据导入导出功能,先在sql2005创建你要的数据库,然后,导入数据,导入时,会提示你要导入那些数据库对象,你可以选择全部对象,然后就ok啦。这是最方便快捷的方式。
导完数据库之后,进系统测试一下,看看有什么错误没有,或者那些数据库对象没有拷贝过去。然后,手动添加过去。
=======================================
你这样做是不行的。sql2000的数据文件,是不能用附加的方式附加到sql2005上去的。我还是不知道你的2台服务器是否能连通,能连通的话,直接在sql2005连接到sql2000,这是可以的,数据库的版本向下兼容。然后在sql2000连接节点中,找到你要导出的数据库,然后右键--任务--导出数据。。。一步一步 *** 作下去就ok,很简单问题,被你搞的这样纠结。。。。。。

五一节办公室要停电,机房虽有UPS,但也支撑不了8小时。
因生产环境有业务系统挂了办公室机房的NAS存储,故需要进行迁移,步骤记录如下:

先闲谈下技术-----------------------
NFS和samba的区别
samba是混合型网络中的共享服务,windows服务器可建samba服务,linux服务器也可建samba服务
nfs只面向unix、linux间的共享,linux服务器可建nfs服务(winodws系统也可以挂载nfs,就是有点不稳定)

NFS服务器上的 *** 作--------------------------

nfs服务器 *** 作系统版本:
[root@c7110 ~]# more /etc/system-release
CentOS Linux release 792009 (Core)

nfs服务器安装nfs服务
[root@c7110 ~]# yum -y install nfs-utils rpcbind

创建nfs目录,并授权
[root@c7110 ~]# mkdir /opt/nfs-test
[root@c7110 ~]# chmod 777 /opt/nfs-test

编辑nfs服务配置文件
[root@c7110 ~]# vi /etc/exports
内容如下:
/opt/nfs-test (rw,root_squash,all_squash,sync)

重新加载nfs配置:
[root@c7110 ~]# exportfs -r

nfs服务设置开机启动
[root@c7110 ~]# systemctl enable rpcbind
[root@c7110 ~]# systemctl enable nfs
[root@c7110 ~]# systemctl enable nfs-lock
[root@c7110 ~]# systemctl enable nfs-idmap

启动nfs服务
[root@c7110 ~]# systemctl start rpcbind
[root@c7110 ~]# systemctl start nfs
[root@c7110 ~]# systemctl start nfs-lock
[root@c7110 ~]# systemctl start nfs-idmap

查看nfs服务启动后,所监听的端口信息:
[root@c7110 ~]# rpcinfo -p

linux服务器服务器上 *** 作-------------------------------
业务服务器安装nfs软件客户端
[root@c7111 ~]# yum -y install nfs-utils

建立一个挂载目录
[root@c7111 ~]# mkdir /opt/test-m

挂载nfs服务器共享出来的目录
[root@c7111 ~]# mount -t nfs 10xx10:/opt/nfs-test /opt/test-m/

查看下已挂载的nfs
[root@c7111 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 15G 0 15G 0% /dev
tmpfs 15G 0 15G 0% /dev/shm
tmpfs 15G 88M 15G 1% /run
tmpfs 15G 0 15G 0% /sys/fs/cgroup
/dev/mapper/centos-root 97G 23G 95G 3% /
/dev/sda1 1014M 171M 844M 17% /boot
tmpfs 297M 0 297M 0% /run/user/0
10xx6:/opt/nfs-test 97G 41G 93G 5% /opt/test-m

经测试,数据可读可写,证明nas服务没有问题,于是进行数据同步,数据同步用rsync命令。

rsync -avp gdsz@108756::nas_6 /mnt/guidang/ --password-file=/root/rsync_pass --bwlimit=100000

数据同步完,通知研发进行挂载切换。研发同事在测试时,发现文件属性中的uid及gid与原来的不一致,有些担心,于是又小完善了一下NFS服务。

编辑nfs服务配置文件
[root@c7110 ~]# vi /etc/exports
内容如下:
/opt/nfs-test (no_all_squash,anonuid=600,anongid=600)

重新加载nfs配置:
[root@c7110 ~]# exportfs -r

SVN项目,原本部署在10101348的电脑上,现在部门采购了一台更好的Server,IP为101013129。
所以,想把SVN项目从48上迁移到129上。做法:准备:
系统平台:windows server 2003
版本库:vos
源服务器:10101348
目标服务器:101013129
源SVN版本库的path: D:\svn\vos
要迁移到的path: E:\svn\vos步骤:
1.停止>其实这只是一个简单的克隆,数据库位置不变,应用服务器改变。
我建议的做法是:
1。备份原有系统。
2。安装克隆所需的补丁,包含特定 *** 作系统的补丁。
3。在新的应用服务器上建立相关的组和用户,并拷贝原有应用的三个目录到新机器的相应位置。主要为 applprod, applcomn ,applora
4。启动原来系统的数据库和监听,注意应用不要启动。
5。在新的应用机器上运行 perl adpreclonepl appsTier,注意回答正确各个选项的值,主要是数据库服务器的主机名和新应用服务器的主机名。这实际上是一个克隆过程。
6。如果上述步骤顺利结束,便可以在新的应用服务器上打开erp登录界面了。
7。至于以后的工作,可能涉及到修改并发管理器里面的程序定义等内容,可以在管理界面种新加一个安装节点,然后重启应用就可以。
8,对于其他网页问题,主要参考数据库连接的dbc文件,以及 system profile 文件,具体问题可以参照metalink的文档,参见metalink上的文档2306721 以及2166641,1651951。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13337437.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-17
下一篇 2023-07-17

发表评论

登录后才能评论

评论列表(0条)

保存