首先使用Sybase Powerdesigner的逆向工程功能,逆向出SQL Server数据库的物理模型。具体 *** 作是在Powerdesigner中选择“File”,“Reverse Engine”再选择Database,将DBMS选择为SQL Server
然后选择数据源,也就是要具体连接到的SQL Server数据库服务器,然后选择要逆向的数据库名,比如选中“WSS_Content_80”
单击确定即可生成物理模型图,然后单击“Database”菜单下的Change Current DBMS修改当前的DBMS,改为MySQL 5.0,单击确定后即可生成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即可。
1、分析物理环境
分析环境能帮企业理清没有得到完全利用的资产,要看一下哪些应用支持虚拟化,以此为依据对应用进行分类。分类标准:基于平台、是否需要中间件、基于数据库来分类等不同的标准。对环境的测试和评估,能帮助企业准确发现哪些应用存在不支持虚拟化的可能。企业级应用一般而言都需要高CPU能量和大数据库,因此不推荐将其转入虚拟化环境。
2、整合并虚拟化服务器
服务器需求经常变动,实现整体分析,包括使用模式,确定一下计算容量,然后才可以执行物理机到虚拟机的迁移。在高峰时段或者升级时分析计算需求,这些需求会影响性能和管理。需要将服务器分离和组成。如果有应用在两个数据库运行,就得用中间件服务器或者运行多数据库的SQL服务器。整合好架构之后,要对环境进行测试,避免任何网络和存储故障,这一步完成后就可以开始虚拟化。
3、网络和存储虚拟化
分析网络和存储架构,发现可能的性能问题。针对分离和孤立网络,我们可以使用虚拟局域网配置,要把自己产品的流量和其他流量分开,确保适合的带宽利用率。在存储方面,最重要的是可扩展性。容量规划和管理的首要问题就是存储使用模式的分析。企业应该测试存储,确保能管理hypervisor负载,支撑虚拟化。企业还得观察自动化存储管理,这样做能让存储资源安排在多租户或者空中架构中,实现在不同应用中共享存储。
4、向云迁移
架构向云的迁移也需要有步骤地进行。最初可以少迁移一些关键应用和相关架构。业务关键的架构应该以之前的成功步骤为基础。确保物理产品的环境已经卸下,但不要完全退役。一旦发生任何意外,物理产品环境可以再次利用。物理环境得留着,运行那些不能虚拟化的应用和服务器。应该确保服务供应商符合行业标准,同时严格的服务水平协议(SLA)和规范的报告必不可少,而且建议做好严格的各级访问控制。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)