
该方法是通过阿里云控制台的在线迁移MySQL的方法,可以不停服务就能够完成数据库的迁移工作,支持MySQL 51、55(50版本只支持全量迁移)的迁移。
一、在控制台中选择”数据库管理--将自建数据库迁移至RDS”:
二、在数据迁移页面进行迁移,如果是将ECS上的自建数据库迁入请选择“ECS上的自建数据库”进行数据迁移。填写“ECS内网IP”,“数据库连接端口”、“数据库账号” 、“数据库密码”,选择迁移方式后确认迁移
迁移的话,直接导出一个库的dmp文件,之后导入到另外一个库里面就可以了(导出和导入数据库版本必须一直,否则导入可能会报错)。
迁移数据导出:
1将数据库TEST完全导出,用户名system密码manager导出到D:chudmp中
expsystem/manager@TESTfile=d:chudmpfull=y
2将数据库中system用户与sys用户的表导出
expsystem/manager@TESTfile=d:chudmpowner=(system,sys)
3将数据库中的表table1、table2导出
expsystem/manager@TESTfile=d:chudmptables=(table1,table2)
4将数据库中的表table1中的字段filed1以"00"打头的数据导出
有标识列么?没有的话,insert into b库名dbouser2 select a库名dbouser1 where
有标识列则需要先修改表user2,取消标识列,然后再导入。
本文介绍五种迁移SQL数据库的方法,包括DTS设计器导入导出、利用备份和恢复、直接拷贝数据文件、在应用程序中定制和SQL Server的复制功能。
DTS设计器导入导出
DTS的设计器功能强大,支持多任务,也是可视化界面,容易 *** 作,但知道的人一般不多,如果只是进行SQL Server数据库中部分表的移动,用这种方法最好,当然,也可以进行全部表的移动。在SQL Server Enterprise Manager中,展开服务器左边的+,选择数据库,右击,选择All tasks/Import Data(或All tasks/Export Data),进入向导模式,按提示一步一步走就行了,里面分得很细,可以灵活的在不同数据源之间复制数据,很方便的。而且可以另存成DTS包,如果以后还有相同的复制任务,直接运行DTS包就行,省时省力。也可以直接打开DTS设计器,方法是展开服务器名称下面的Data Transformation Services,选Local Packages,在右边的窗口中右击,选New Package,就打开了DTS设计器。
值得注意的是:如果源数据库要拷贝的表有外键,注意移动的顺序,有时要分批移动,否则外键主键,索引可能丢失,移动的时候选项旁边的提示说的很明白,或者一次性的复制到目标数据库中,再重新建立外键,主键,索引。
利用备份和恢复
先对源数据库进行完全备份,备份到一个设备(device)上,然后把备份文件复制到目的服务器上(恢复的速度快),进行数据库的恢复 *** 作,在恢复的数据库名中填上源数据库的名字(名字必须相同),选择强制型恢复(可以覆盖以前数据库的选项),再选择从设备中进行恢复,浏览时选中备份的文件就行了。这种方法可以完全恢复数据库,包括外键,主键,索引。
直接拷贝数据文件
把数据库的数据文件(mdf)和日志文件(ldf)都拷贝到目的服务器,在SQL Server Query Analyzer中用语句进行恢复:
EXEC sp_attach_db @dbname = ';test';,
@filename1 = ';d:mssql7datatest_datamdf';,
@filename2 = ';d:mssql7datatest_logldf';
这样就把test数据库附加到SQL Server中,可以照常使用。如果不想用原来的日志文件,可以用如下的命令:
EXEC sp_detach_db @dbname = ';test';
EXEC sp_attach_single_file_db @dbname = ';test';,
@physname = ';d:mssql7datatest_datamdf';
这个语句的作用是仅仅加载数据文件,日志文件可以由SQL Server数据库自动添加,但是原来的日志文件中记录的数据就丢失了。
在应用程序中定制
可以在应用程序(PB、VB)中执行自己编写的程序,也可以在Query Analyzer中执行,这种方法比较灵活,其实是利用一个平台连接到数据库,在平台中用的主要是SQL语句,这种方法对数据库的影响小,但是如果用到远程链接服务器,要求网络之间的传输性能好,一般有两种语句:
1> select into new_tablename where
2> insert (into) old_tablename select from where
区别是前者把数据插入一个新表(先建立表,再插入数据),后者是把数据插入已经存在的一个表中,我个人喜欢后者,因为在编程的结构上,应用的范围上,第二条语句强于前者。
SQL Server的复制功能
SQL Server提供了强大的数据复制功能,也是最不易掌握的,具体应用请参考相关资料,值得注意的是要想成功进行数据的复制工作,有些条件是必不可少的:
1)SQL Server Agent必须启动,MSDTC必须启动。
2)所有要复制的表必须有主键。
3)如果表中有text或image数据类型,必须使用with log选项,不能使用with no_log选项。
另外max text repl size选项控制可以复制的文本和图像数据的最大规模,超过这个限制的 *** 作将失败。
4)在要进行复制的计算机上,应该至少是隐含共享,即共享名是a1、b1…。
5)为SQL Server代理使用的Windows Server账号不能是一个本地的系统账号,因为本地的系统账号不允许网络存取。
首先,暂停SQL2000数据库,将MDF和LDF文件备份。
这些文件复制到新机器,尝试直接附加,如果两个SQL版本一致,就这个方法最直接。但如果失败,尝试下面几个方法。
一般来说,不同SQL版本迁移数据,推荐使用两种方法进行转换:
1·使用数据库备份还原,在2000中备份成bak文件,到新系统中还原,这个方法的成功率比直接附加大的多,但如果数据库中存在特殊性不兼容的结构,此方法也可能失败,这时候使用第二种方法;
2·在2000中对数据库导出完整脚本(sql文件),在新系统中创建一个空库,执行该脚本。并使用DTS导入数据。
如何迁移完整SQL数据库到另外一台服务器
首先,打开服务器上已经安装好的SQL Server 2005 服务器,并且用本地Windows身份登录。
2
打开SQL Server服务器以后,点击数据库--选择附加
3
打开附加数据库界面后,点击右小角的添加
4
打开电脑上,之前备份好的完成数据库文件,然后点击确认。
5
数据库文件和其数据库日志文件,就一并加载过来了,点击确认就可以了。
6
展开数据库,就可以了看到我
们刚刚附加过来的完整数据库了,现在就可以
将Mysql数据库迁移到Oracle数据库的具体过程:需要准备的工具:1
连接Mysql的jdbc驱动mysql-connector-java-5
0
4-bin
jar2
Oracle公司开发的SQLDeveloper1
2下面就是配置SQLDeveloper1
2配置环境:选择Tools-Preferences-Database-ThirdPartyJDBCDriver点击AddEntry添加Mysql的jdbc驱动
配置MySQL和Oracle的连接点击Connection右键选择NewConnection分别建立Mysql和Oracle连接
建立好连接后,你就可以查看你得数据库了
两种迁移数据的方式:1
Capturethesourcedatabaseortables2
Convertthecaptureddatabaseortables3
GenerateDDLforthenewOracleschemaobjects4
RunthegeneratedDDLscripttocreatethenewuserandobjects5
Copyanydatafromthesourcedatabasetothenewdatabase,selectMigration-
快速迁移:选择你要迁移的表或数据库,选择Migration-
OK
以上就是关于之如何把我的数据库一键迁移至RDS全部的内容,包括:之如何把我的数据库一键迁移至RDS、怎么将oracle数据库的数据迁移(oracle数据库迁移怎么 *** 作)、数据库的部分数据迁移该怎么做等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)