mark一下,直接将a的voice数据库创建到b的voice1数据库上 | mysql 技术论坛-凯发备用官网
要通过 mysql 命令行实现从一台服务器的数据库复制到另一台服务器上,可以按照以下步骤进行:
1. 确保两台服务器之间可以通信
- 确保
192.168.0.110上的 mysql 服务器允许来自192.168.0.100的连接。 - 在
192.168.0.110上配置 mysql 用户,赋予必要权限:grant all privileges on *.* to 'your_user'@'192.168.0.100' identified by 'your_password'; flush privileges;
2. 使用 mysqldump 备份和导入
在 192.168.0.100 上,通过 mysqldump 将 voice 数据库导出,并直接导入到 192.168.0.110 的 voice1 数据库。
命令如下:
mysqldump -h 192.168.0.100 -u source_user -p source_password voice | mysql -h 192.168.0.110 -u target_user -p target_password voice1
- 参数说明:
192.168.0.100: 源数据库的 ip 地址。source_user: 源数据库的用户名。source_password: 源数据库的密码。voice: 源数据库的名称。192.168.0.110: 目标数据库的 ip 地址。target_user: 目标数据库的用户名。target_password: 目标数据库的密码。voice1: 目标数据库的名称。
3. 创建目标数据库(如果未创建)
在 192.168.0.110 上先创建 voice1 数据库:
create database voice1;
然后执行上述命令。
4. 检查数据复制是否成功
登录 192.168.0.110 的 mysql,检查 voice1 数据库:
mysql -h 192.168.0.110 -u target_user -p
use voice1;
show tables;
其他注意事项
如果数据量较大,可以先将
voice数据库导出为文件,再导入:- 导出:
mysqldump -h 192.168.0.100 -u source_user -p source_password voice > voice.sql - 传输文件到目标服务器(通过 scp 或其他方式)。
- 导入:
mysql -h 192.168.0.110 -u target_user -p voice1 < voice.sql
- 导出:
确保两台服务器的 mysql 版本兼容,避免导入时出现语法或兼容性问题。
如果数据库很大,可以使用
--single-transaction和--quick参数来优化导出性能:mysqldump --single-transaction --quick -h 192.168.0.100 -u source_user -p source_password voice | mysql -h 192.168.0.110 -u target_user -p voice1
本作品采用《cc 协议》,转载必须注明作者和本文链接