最近在做项目的过程中发现需要连接到远程数据库,并且修改的部分后段代码会对数据库进行一些操作。如果直接连接远程数据库如果代码出错可能会造成一些问题,所以希望在本地运行一个一模一样的数据库。由于第一次使用,创建过程中遇到了很多问题,在此记录一下如何完成本过程。
背景:使用IDEA自带的数据库工具
注:方法二完成了目标
方法一:首先尝试IDEA自带工具:(2026报错,尝试失败,暂未找到解决方法)
连接好database后,找到需要复制的schema,按照下图操作
执行后报错:
mysqldump: Got error: 2026: SSL connection error: error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol when trying to connect
后经查询报错原因是ssl mode没有设置为disabled,但没有找到合适的方式添加 --ssl-mode=DISABLED在IDEA中,寻找替代方法。
方法二:直接在terminal中使用mysqldump
步骤一:生成 .sql文件
命令行:
mysqldump -u用户名 -p密码 -h服务器ip地址 -P端口 要复制的schema名称 > 路径/文件名.sql
For example:
用户名:root
密码:123456
ip:127.0.0.1
port:3306
schema名称:wiki(如上图)
希望生成的文件名:wikidatabase.sql
命令行:mysqldump -uroot -P3306 -p123456 -h127.0.0.1 wiki > /Users/Decuments/wikidatabase.sql
执行后会报错:
mysqldump: Got error: 2026: SSL connection error: error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol when trying to connect
原因:未添加 --ssl-mode=DISABLED
修改后命令行:mysqldump -uroot -P3306 -p123456 -h127.0.0.1 --ssl-mode=DISABLED wiki > /Users/Decuments/wikidatabase.sql
执行后报错:unknown table 'column_statistics' in information_schema
解决方案:添加--column-statistics=0
修改后命令行:mysqldump --column-statistics=0 -uroot -P3306 -p123456 -h127.0.0.1 --ssl-mode=DISABLED wiki > /Users/Decuments/wikidatabase.sql
执行后生成sql文件成功。
步骤二:
使用IDEA自带工具在本地创建一个数据库,名称与想要复制的远程数据库相同。
按照下图操作,选择上一步生成的sql文件,运行后就获得了一个与目标数据库一样的数据库