场景:
1.系统: Ubuntu 16.04
2.阿里云: RDS(数据库机)
3.前端机: A 应用
需求: 将 A 应用数据迁移并部署到其他服务器上
嗯, 不暇思索地, mysqldump 工具(MySQL 自带备份工具)
shell 格式如下
mysqldump -h host_name -u user_name -p db_name > backup-file.sql
-h host_name: 指定备份数据库的服务器HOST, 默认是localhost
-u user_name: 连接MySQL服务的用户名
db_name : 备份数据库名
然, 问题如下
The program ‘mysqldump’ can be found in the following packages:
- mysql-client-5.7
- mariadb-client-10.0
Ask your administrator to install one of them
从返回结果看, 前端机没有安装 MySQL client 且指定了MySQL 版本(挺好的)以及包名
执行 mysql-client-5.7 包
sudo apt-get install mysql-client-5.7
结果: 没有找到安装包, 灰心
执行 mariadb-client-10.0
sudo apt-get install mariadb-client-10.0
结果: 成功
将数据备份完成之后, 需要将数据导入到另外一台服务器
数据(backup-file.sql)导入格式
mysql db_name < backup-file.sql
或者
mysql -e “source /path-to-backup/backup-file.sql” db_name
在备份之前, 需要通过 scp 工具将 backup-file.sql 发送新服务器上。如果有问题请自行必应或者谷神
知识点:
Linux(shell): scp 等
MySQL: mysqldump
Ubuntu: apt-get
参考:
mysqldump 更多知识点
https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html#mysqldump-option-examples
https://stackoverflow.com/questions/32121616/run-mysql-in-mysql-cluster
https://superuser.com/questions/165582/installation-mysqldump