在开发工作中和运维工作中,数据库的备份与还原是很常见的工作。之前的工作中我使用oracle更多,mysql的备份工作参与的比较少。记录一下,加深一下印象。
准备工作安装mysql客户端,我喜欢使用mysql client 命令行版本的。 可以参考: 《macOS 安装mysql client命令行工具》 https://blog.csdn.net/lxyoucan/article/details/123864650 《如果在ubuntu上安装mysql client》 https://blog.csdn.net/lxyoucan/article/details/123434121
导出数据示例:
mysqldump --column-statistics=0 --port=3306 -h127.0.0.1 -uroot -pitkey123456 ry-vue > dump.txt
--column-statistics=0
是为了解决导出时报以下错误的。猜测可能是是高版本mysqldump导低版本数据库时会出现这个问题
mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"') FROM information_schema.COLUMN_STATISTICS
--port=
数据库的端口-h127.0.0.1
这里把后面的ip换成你自己的ip-uroot
表示使用root用户登录,可以换成你自己的用户p密码
把-p
后面的内容修改成你的密码即可ry-vue
换成你要导出的数据库名称dump.txt
换成你要导出的文件名
导入的方法就比较多种多样了,因为上面生成的dump.txt其实就是一个sql脚本文件。直接执行即可。
我的操作如下:
#连接mysql
mysql --port=3306 -h127.0.0.1 -uroot -pitkey123456
#以下是在mysql>交互命令行执行
#创建数据库
CREATE DATABASE `ry-vue` CHARACTER SET UTF8;
#选择数据库
use ry-vue;
#执行刚才生成的脚本文件
source /home/itkey/dump.txt
只要把以上命令中变量部分修改成你实际的数据就行了。
参考https://www.cnblogs.com/commissar-Xia/p/10302336.html