mysql 迁移达梦数据库出现的 sql 语法问题 以及迁移方案

迁移方案:

1.下载官方DM8开发版 产品下载-达梦数据

2.会下载到win系统下的左下角的开始

1.1.2 创建工程

右击空白处,新建

1.1.3 新建迁移

1.1.3.1 选择迁移方式

MySql迁移DM

1.1.3.2 配置数据源

输入你的mysql配置后,刷新,选择要迁移的数据库名

1.1.3.3 配置目的

输入你要迁入的达梦数据库的配置

1.1.3.4 迁移选项

先用默认

保持对象名大小写,不勾选,达梦默认表名和字段名都大写

1.1.3.5 指定模式

1.1.3.6 指定对象

全选你要迁移的表

1.1.3.7 审阅任务

点击完成开始迁移

1.1.3.8 迁移完成

1.1.4 查看迁移后的表

1.1.4.1 登录新用户ESO

1.1.4.2 查看表数据

迁移注意事项

1.需要避免表中的一些注释,会被视为无效的列

2.MySQL与达梦字符占位大小不同

Mysql SQL中使用的是UTF8编码。 在MySQL 中 varchar(1) 可以存一个汉字,DM 数据库是以字节为单位。gb18030 字符集,varchar(2) 才可以存一个汉字;UTF-8 字符集,varchar(3) 才可以存一个汉字。该names在MYSQL的长度为10,在迁移过程中,达梦数据库建表的names字段长度也是10,那么就会导致当该字段中文字符超过4个的时候,就会出现无法存下的问题。 如bit在mysql长度是1 在达梦中就是4 会导致结果中会有空格 "1 "

兼容性方案:

  1. 在MySQL中使用 def_flag=false 的语法在达梦数据库中会出现语法错误,因为达梦数据库无法识别 false。解决方法是将SQL语句中的 def_flag=false 替换为 def_flag=0,或者在数据层面进行调整。

publ

您好!对于将MySQL迁移达梦数据库问题,您可以按照以下步骤进行操作: 1. 首先,确保您已经在目标服务器上安装了达梦数据库,并且数据库服务正在运行。 2. 在MySQL中创建一个备份文件,以便将数据导出到达梦数据库。您可以使用mysqldump命令导出MySQL数据库。例如,执行以下命令导出名为"mydatabase"的数据库: ``` mysqldump -u [用户名] -p [密码] [mydatabase] > mydatabase.sql ``` 这将生成一个名为"mydatabase.sql"的备份文件。 3. 将备份文件传输到达梦数据库服务器上,您可以使用FTP或其他文件传输工具进行传输。 4. 在达梦数据库服务器上,使用达梦数据库客户端工具打开终端或命令提示符。 5. 创建一个新的数据库,用于存储MySQL数据。例如,执行以下命令创建名为"mydatabase"的数据库: ``` create database mydatabase; ``` 6. 导入MySQL备份文件到达梦数据库。例如,执行以下命令导入备份文件: ``` dm_import -u [用户名] -p [密码] -d mydatabase -f mydatabase.sql ``` 这将导入备份文件中的数据到达梦数据库中的"mydatabase"数据库。 7. 确认数据导入成功,您可以使用达梦数据库客户端工具连接到达梦数据库并验证数据是否正确导入。 请注意,由于MySQL达梦数据库之间的差异,某些功能和语法可能不兼容。在迁移过程中,您可能需要进行一些调整和修改以适应达梦数据库的要求。 希望这些步骤对您有所帮助!如果您还有其他问题,请随时提问。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值