美文网首页
mac 命令行导出MYSQL数据库的所有表到本地 遇到的三个坑

mac 命令行导出MYSQL数据库的所有表到本地 遇到的三个坑

作者: CoderZb | 来源:发表于2020-01-09 10:28 被阅读0次

按出现的问题顺序,依次解决

第一个坑:报mysqldump: command not found错误

问题描述:

终端输入
mysqldump -h rm-m5e8tk5r9448tl5i38o.mysql.rds.aliyuncs.com -u ymzp -p ymzp_sql_app> /Users/zhangbin/Desktop/CoderZbData/ymzp_mysql_dump.sql
命令,会报mysqldump: command not found的错误

image.png

原因:

没有进入到mysqldump可执行文件所在的目录中。

image.png

解决办法:

命令中补全mysqldump所在的路径即可
/usr/local/mysql/bin/mysqldump -h rm-m5e8tk5r9448tl5i38o.mysql.rds.aliyuncs.com -u ymzp -p ymzp_sql_app> /Users/zhangbin/Desktop/CoderZbData/ymzp_mysql_dump.sql

或者请移步到我的这边文章看另一种解决办法使用ln -fs命令,解决mac终端命令行 操作mysql时,提示command not found的问题


第二个坑:

问题描述:

既第一个坑之后,执行
/usr/local/mysql/bin/mysqldump -h rm-m5e8tk5r9448tl5i38o.mysql.rds.aliyuncs.com -u ymzp -p ymzp_sql_app> /Users/zhangbin/Desktop/CoderZbData/ymzp_mysql_dump.sql命令,会报
Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you don't want to restore GTIDs, pass --set-gtid-purged=OFF. To make a complete dump, pass --all-databases --triggers --routines --events.
警告的问题

image.png

原因:未设置--set-gtid-purged=off参数

解决办法:

命令中添加置--set-gtid-purged=off参数即可
/usr/local/mysql/bin/mysqldump -h rm-m5e8tk5r9448tl5i38o.mysql.rds.aliyuncs.com -u ymzp --set-gtid-purged=off -p ymzp_sql_app> /Users/zhangbin/Desktop/CoderZbData/ymzp_mysql_dump.sql


第三个坑:

问题描述:

既第二个坑之后,执行
/usr/local/mysql/bin/mysqldump -h rm-m5e8tk5r9448tl5i38o.mysql.rds.aliyuncs.com -u ymzp --set-gtid-purged=off -p ymzp_sql_app> /Users/zhangbin/Desktop/CoderZbData/ymzp_mysql_dump.sql
命令,会报
mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"') FROM information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'ymzp_sql_app' AND TABLE_NAME = 'cmf_admin_menu';': Unknown table 'column_statistics' in information_schema (1109)的错误

image.png

原因:缺少--column-statistics=0参数

解决办法:

命令中添加--column-statistics=0参数即可
/usr/local/mysql/bin/mysqldump --column-statistics=0 -h rm-m5e8tk5r9448tl5i38o.mysql.rds.aliyuncs.com -u ymzp --set-gtid-purged=off -p ymzp_sql_app> /Users/zhangbin/Desktop/CoderZbData/ymzp_mysql_dump.sql


解决上述三个坑之后,最终将MYSQL数据库的所有表保存到了本地的ymzp_mysql_dump.sql文件中

image.png

我的这篇文章介绍了mac中 导出/导入MYSQL数据库的所有表到本地(sql后缀的文件)

相关文章

网友评论

      本文标题:mac 命令行导出MYSQL数据库的所有表到本地 遇到的三个坑

      本文链接:https://www.haomeiwen.com/subject/hjaeactx.html