场景:本机通过一台ECS服务器,再去连远程服务器上的mysql数据库。并且对Mysql库进行备份 / 恢复到本地mysql
有多种方式可操作:1. haproxy tcp代理 (https://www.cnblogs.com/qinshuipo/articles/10382079.html) (此方式可长久使用)
2. Linux版 Navicat for MySQL
3. mysql-client 通过mysql dump备库 (一次性)
此次使用第3种方式一次性备库down到本地。
先在跳板机(ECS)安装mysql命令 (无需安装mysql,只要命令即可) 客户端,即MySQL-client
注:此安装仅安装mysql-client(mysql的命令) ,未安装mysql数据库 (不需要)。
仅安装MySQL客户端
# 添加rpm源 (此步骤本次操作省略,因为已有。各位视自己情况而定)
[[email protected] ~]# rpm -ivh https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
# 通过yum搜索
[[email protected] ~]# yum search mysql-community
# 安装x64位的 mysql客户端
[[email protected] ~]# yum install mysql-community-client.x86_64 -y
然后通过跳板机命令行,连接到远程数据库。
此处用到命令为:
[[email protected] ~]# mysql -h 192.168.1.118 -p xx -u root -p
Enter password:
注: xx 为数据库名、root为账号、密码在命令回车后再输入。
连上之后就和linux操作自己本地数据库方式一样了。
此处给出mysql链接本地数据库、远程数据的命令:
1、MySQL 连接本地数据库,用户名为“root”,密码“123”(注意:“-p”和“123” 之间不能有空格)
C:/>mysql -h localhost -u root -p123
2、MySQL 连接远程数据库(192.168.0.201),端口“3306”,用户名为“root”,密码“123”
C:/>mysql -h 192.168.0.201 -p 3306 -u root -p123
3、MySQL 连接本地数据库,用户名为“root”,隐藏密码
C:/>mysql -h localhost -u root -p
Enter password:
4、MySQL 连接本地数据库,用户名为“root”,指定所连接的数据库为“test”
C:/>mysql -h localhost -u root -p123 -D test
mysql>select database();
+------------+
| database() |
+------------+
| test |
+------------+
扩展:
https://www.cnblogs.com/linuxk/p/9371475.html
#备份database 到本地文件 并且压缩
[[email protected] ~]# mysqldump -h 192.168.0.201 -u root -p -B database | gzip > /tmp/mysqltest.sql.gz
Enter password:
注: database 为数据库名、root为账号、密码在命令回车后再输入。( 'mysql' 这种LOCK 上的库无法备份)
#到本地mysql恢复数据 (以命令行方式)
E:\>mysql -uroot -p < e:mysqltest.sql
Enter password: ****
end.