場景:本機通過一臺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源 (此步驟本次操作省略,因爲已有。各位視自己情況而定)
[root@k8s-master ~]# rpm -ivh https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
# 通過yum搜索
[root@test1 ~]# yum search mysql-community
# 安裝x64位的 mysql客戶端
[root@test1 ~]# yum install mysql-community-client.x86_64 -y
然後通過跳板機命令行,連接到遠程數據庫。
此處用到命令爲:
[root@root ~]# 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 到本地文件 並且壓縮
[root@iZi5c060y91o8tc9r6sfa6Z ~]# 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.