MYSQL跨服务器数据表使用
需求:服务器A想在服务器B中查数据并添加到A中
方法一:
脚本链接服务器B中获取数据添加到服务器A中(小表和分段数据添加)
方法二:
考虑数据表小的可以直接从B中导出导入到服务器A中(十万级别数据表太大CPU会爆满)
方法三:
从服务器A中映射服务器B中指定表到A临时表中,双向连接,其实就是用的同一个表,不管A还B中增删改都会直接同步展示(表越小打开的越快)
create table 表名(
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`time` int(8) unsigned DEFAULT NULL COMMENT '当前日期',
PRIMARY KEY (`id`),
) engine=FEDERATED CONNECTION='mysql://用户名:密码@IP地址:端口号/数据库/数据表';
方法四:
使用内网命令行迁移数据表先备份再还原(大数据量迁移很方便,但是导入占用mysql服务器导致全表锁)
备份-----mysqldump -h 主机IP -uroot -p db table>.sql文件
还原-----mysqldump -h 主机IP -uroot -p db<.sql文件
方法五:
使用单表底层文件直接迁移,innodb的源文件.frm和.idb文件迁移,后续可能会出现问题。但是需要看版本迁移
mysql8.0没有.frm文件 只有.idb和.sdi文件