本节主要内容:
学习mysql远程导入库的方法。
共介绍了三种实现方式。
环境:
192.168.2.106 为source database
192.168.2.207 为destination database
需要将206机器上的db迁移到207机器上去!
下面介绍实现远程导入有三种方式。
一:在206机器上执行:
mysql> grant all on test.* to 'testuser'@'%' identified by 'testuser';
Query OK, 0 rows affected (0.00 sec)
mysql> use test;
Database changed
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| b |
+----------------+
1 row in set (0.00 sec)
mysql> select * from b;
+------+-------+
| id | name |
+------+-------+
| 1 | zhang |
+------+-------+
1 row in set (0.06 sec)
mysql> create table a(id int,name varchar(20));
Query OK, 0 rows affected (0.04 sec)
mysql> insert into a values(1,'liu');
Query OK, 1 row affected (0.00 sec)
mysql> insert into a values(2,'jack');
Query OK, 1 row affected (0.00 sec)
mysql> select * from a;
+------+------+
| id | name |
+------+------+
| 1 | liu |
| 2 | jack |
+------+------+
2 rows in set (0.00 sec)
207机器上执行:
mysql> use test;
Database changed
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| dsns |
| person |
+----------------+
2 rows in set (0.00 sec)
mysql> drop table person;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
[root@jbxue dota2_db]# mysqldump -h 192.168.2.206 -utestuser -p'testuser' --default-character-set=utf8 --allow-keywords test |/data/mysql/bin/mysql -uroot -pkuutown1601 test
[root@jbxue test]# pwd
/data/mysql/var/test
[root@jbxue test]# ll
total 328
-rw-rw----. 1 mysql mysql 8586 Sep 25 17:07 a.frm
-rw-rw----. 1 mysql mysql 98304 Sep 25 17:07 a.ibd
-rw-rw----. 1 mysql mysql 8586 Sep 25 17:07 b.frm
-rw-rw----. 1 mysql mysql 98304 Sep 25 17:07 b.ibd
-rw-rw----. 1 mysql mysql 61 Aug 7 17:13 db.opt
-rw-rw----. 1 mysql mysql 8624 Aug 7 17:13 dsns.frm
-rw-rw----. 1 mysql mysql 98304 Aug 7 17:15 dsns.ibd
显然红色字体为多出的部分!
二:通过nc ,nc的全称为netcat
安装nc
即可安装,
###在两台机器上都需要安装nc
先在207机器上,打开nc监听,我使用的命令为:
在206机器上运行:
即可将206机器上的loldbrtmp8数据库下的表导入到207机器上的loldbrmtp8 中!
###注意防火墙上放过4567端口
在207上执行完nc相关命令后,用netstat -an | grep 4567 就会看到端口在监听!
三:直接通过
在207上执行
在206上执行如下:
四:通过ssh通道
还有一种方式,将远程的db导入到本地!
在206机器上登录207,将207机器上的loldbrtmp9下的表导入到206机器上的loldbrtmp9中