Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql 复制数据库

作者:海枯石烂有多久   发布日期:2025-12-11   浏览:86

-- 创建一个新的数据库作为复制的目标
CREATE DATABASE replicated_db;

-- 使用 mysqldump 导出源数据库的结构和数据
mysqldump -u root -p original_db > original_db_backup.sql

-- 将导出的 SQL 文件导入到新的数据库中
mysql -u root -p replicated_db < original_db_backup.sql

-- 设置主从复制(假设已经配置好主服务器和从服务器)
-- 在主服务器上创建一个用于复制的用户
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';

-- 获取主服务器的二进制日志文件名和位置
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;

-- 解锁表
UNLOCK TABLES;

-- 在从服务器上配置主服务器信息
CHANGE MASTER TO
MASTER_HOST='master_server_ip',
MASTER_USER='replication_user',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='log_file_name',
MASTER_LOG_POS=log_file_position;

-- 启动从服务器的复制线程
START SLAVE;

-- 检查复制状态
SHOW SLAVE STATUS\G;

解释说明:

  1. 创建新数据库:首先创建一个新的数据库 replicated_db 用于存储复制的数据。
  2. 导出源数据库:使用 mysqldump 工具将源数据库 original_db 的结构和数据导出到一个 SQL 文件中。
  3. 导入数据到新数据库:将导出的 SQL 文件导入到新创建的数据库 replicated_db 中。
  4. 设置主从复制
    • 在主服务器上创建一个用于复制的用户,并授予其复制权限。
    • 获取主服务器的二进制日志文件名和位置,以便从服务器能够从正确的位置开始复制。
    • 在从服务器上配置主服务器的信息,包括主机地址、用户名、密码、二进制日志文件名和位置。
    • 启动从服务器的复制线程并检查复制状态。

以上代码展示了如何通过导出和导入的方式复制数据库,以及如何设置 MySQL 的主从复制。

上一篇:centos8 安装mysql

下一篇:mysql计算年龄

大家都在看

mysqlavg函数保留小数

mysql显示表内容

mysql经纬度距离计算

mysql 加密

存储过程mysql

mysql 1265

mysql with语句

mysql时间加减

mysql查询表名,模糊匹配

brew 启动mysql

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站