远程 导数据 mysql_mysql远程导入

本节主要内容:

学习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

复制代码 代码示例:

tar zxvf netcat-0.7.1.tar.gz

cd netcat-0.7.1

./configure

make

make install

即可安装,

###在两台机器上都需要安装nc

先在207机器上,打开nc监听,我使用的命令为:

复制代码 代码示例:

[root@jbxue liuxiaojie]# nc -l -p 4567 | gunzip  | mysql -uroot -pk****1  loldbrtmp8

在206机器上运行:

复制代码 代码示例:

[root@web1 var]#  mysqldump -uroot -pk****1 loldbrtmp8| gzip | nc -w1 192.168.2.207 4567

即可将206机器上的loldbrtmp8数据库下的表导入到207机器上的loldbrmtp8 中!

###注意防火墙上放过4567端口

在207上执行完nc相关命令后,用netstat -an | grep 4567 就会看到端口在监听!

三:直接通过

在207上执行

复制代码 代码示例:

mysql> grant all on loldbrtmp8.* to 'importuser'@'192.168.2.206' identified by 'importuser';

Query OK, 0 rows affected (0.07 sec)

在206上执行如下:

复制代码 代码示例:

[root@web1 var]#  mysqldump -uroot -pk***1 loldbrtmp8|mysql -h 192.168.2.207 -uimportuser -pimportuser loldbrtmp8

四:通过ssh通道

复制代码 代码示例:

[root@web1 var]#  mysqldump -uroot -pk***1 loldbrtmp8|ssh root@192.168.2.207 mysql  -uroot -p'k81' loldbrtmp8

root@192.168.2.207's password:  输入207机器上系统用户root对应的密码即可

还有一种方式,将远程的db导入到本地!

在206机器上登录207,将207机器上的loldbrtmp9下的表导入到206机器上的loldbrtmp9中

复制代码 代码示例:

[root@web1 var]# ssh root@192.168.2.207  mysqldump -uroot -pk****1 loldbrtmp9| mysql  -uroot -p'k***1' loldbrtmp9

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值