迁移数据到Linux MariaDB可以通过多种方式进行,以下是一些常见的方法:
备份源数据库
在源数据库上运行mysqldump
命令来导出数据。
mysqldump -u [用户名] -p[密码] [数据库名] > backup.sql
注意:-p
后面直接跟密码,不要有空格。
将备份文件传输到目标服务器
使用scp
或其他文件传输工具将backup.sql
文件传输到目标Linux服务器。
scp backup.sql user@target_server:/path/to/destination/
在目标服务器上导入数据
登录到目标服务器,使用mysql
命令导入数据。
mysql -u [用户名] -p[密码] [数据库名] < /path/to/destination/backup.sql
安装Percona XtraBackup 在源服务器和目标服务器上都安装Percona XtraBackup。
sudo apt-get install percona-xtrabackup-24
执行物理备份 在源服务器上运行以下命令进行全量备份。
xtrabackup --backup --target-dir=/path/to/backup --user=[用户名] --password=[密码]
准备备份 将备份文件传输到目标服务器,并在目标服务器上准备备份。
xtrabackup --prepare --target-dir=/path/to/backup
恢复备份 将准备好的备份文件复制到MariaDB的数据目录,并启动MariaDB服务。
cp -R /path/to/backup/* /var/lib/mysql/
systemctl start mariadb
配置主从复制 在源服务器上配置为Master,在目标服务器上配置为Slave。
my.cnf
或my.ini
文件,添加以下内容:[mysqld]
server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = [数据库名]
my.cnf
或my.ini
文件,添加以下内容:[mysqld]
server-id = 2
relay_log = /var/log/mysql/mysql-relay-bin.log
log_bin = /var/log/mysql/mysql-bin.log
replicate_do_db = [数据库名]
重启MariaDB服务 在两台服务器上重启MariaDB服务以应用配置更改。
systemctl restart mariadb
设置复制关系 在目标服务器上执行以下SQL命令来设置复制关系。
CHANGE MASTER TO
MASTER_HOST='源服务器IP',
MASTER_USER='复制用户',
MASTER_PASSWORD='复制用户密码',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=107;
START SLAVE;
验证复制状态 在目标服务器上检查复制状态以确保数据同步成功。
SHOW SLAVE STATUS\G
选择适合你需求的方法进行数据迁移,并确保在整个过程中监控进度和状态。