不知道大家之前对类似如何实现迁移RDS for MySQL数据到本地 MySQL的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完如何实现迁移RDS for MySQL数据到本地 MySQL你一定会有所收获的。首先需要下载跟线上阿里云的数据库同样版本的数据库安装包或者说二进制编码包(已编译,可以直接使用)链接如下:http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz解压缩:root@ubuntu:/data#tar -xzvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gzroot@ubuntu:/data# mv mysql-5.6.36-linux-glibc2.5-x86_64 mysqlroot@ubuntu:/data#cd mysqlroot@ubuntu:/data/mysql#root@ubuntu:/data/mysql# ls //解压缩出来的文件如下所示,不用源码编译安装,直接使用即可;bin COPYING data docs include lib man my.cnf my-new.cnf mysql-test README scripts share sql-bench support-files接下来就是解压缩线上数据库的备份文件:root@ubuntu:/data/mysql#cd ../root@ubuntu:/data# tar -xzvf h7351_data_20170804032.tar.gz -C /data/mariadb/待得解压缩完成后,恢复数据文件:首先需要安装innobackupex命令,所以要安装这个包文件:root@ubuntu:/data#apt-get install percona-xtrabackuproot@ubuntu:/data#innobackupex –defaults-file=./backup-my.cnf –apply-log –ibbackup xtrabackup_56 ./ //必须要加上后面的–ibbackup xtrabackup_56,我这里是56,因为我的数据库版本是5.6版本的;最后系统显示innobackupex: completed OK!,则数据恢复成功。数据恢复成功之后,修改恢复数据mariadb目录下文件(包含mariadb目录)的属主和属组:新建mysql用户:root@ubuntu:/data#useradd mysqlroot@ubuntu:/data# chown -R mysql.mysql mariadb/ //修改解压缩后的数据文件的属主和属组,以级联的方式,把mariadb目录下的所有文件修改属主和属组为mysql初始化之前需要修改配置文件;root@ubuntu:~#cd /data/mariadb //数据库的数据文件解压缩的目录root@ubuntu:/data/mysql/scripts# cd /data/mariadb/root@ubuntu:/data/mariadb# vi backup-my.cnf //我的配置文件如下:把将解压文件backup-my.cnf中的innodb_fast_checksum、innodb_page_size、innodb_log_block_size注释掉,并且添加datadir=/data/mariadb
# This MySQL options file was generated by innobackupex.# The MySQL server[mysqld]innodb_checksum_algorithm=innodb#innodb_log_checksum_algorithm=innodbinnodb_data_file_path=ibdata1:200M:autoextendinnodb_log_files_in_group=2innodb_log_file_size=1572864000#innodb_fast_checksum=false#innodb_page_size=16384#innodb_log_block_size=512innodb_undo_directory=.innodb_undo_tablespaces=0datadir=/data/mariadb#rds_encrypt_data=false#innodb_encrypt_algorithm=aes_128_ecb初始化操作:进入刚解压的mysql安装的位置/data/mysqlroot@ubuntu:~# cd /data/mysql/root@ubuntu:/data/mysql# lsbin COPYING data docs include lib man my.cnf my-new.cnf mysql-test README scripts share sql-bench support-filesroot@ubuntu:/data/mysql# cd scripts/root@ubuntu:/data/mysql开发云主机域名/scripts#root@ubuntu:/data/mysql/scripts# ./mysql_install_db –user=mysql –datadir=/data/mariadb –basedir=/data/mysql –defaults-file=/data/mariadb/backup-my.cnf //这里需要指定配置文件,不然它会在初始化的时候去到/etc/目录下查找出现OK即表示初始化成功;接下来就是创建快捷方式啦:root@ubuntu:/data/mariadb# cd /data/mysql/support-files/ //进入mysql安装位置的这个目录root@ubuntu:/data/mysql/support-files# lsbinary-configure magic my-default.cnf mysqld_multi.server mysql-log-rotate mysql.serverroot@ubuntu:/data/mysql/support-files# cp mysql.server /etc/init.d/mysqld //复制启动文件到/etc/init.d/目录下root@ubuntu:/data/mysql/support-files#vi /etc/init.d/mysqld //做一下修改,具体修改的位置如下:basedir=/data/mysqldatadir=/data/mariadb
修改完成后保存退出,还需要注意一个地方,就是配置文件,如果启动的时候不指定配置文件,那么它就会调用/etc/my.cnf文件,所以需要指定,有两种方法,一种是直接在/etc/init.d/mysqld中修改,如: #conf=/etc/my.cnf conf=/data/mariadb/backup-my.cnf
另一种方法就是:直接复制解压文件mariadb目录下的backup-my.cnf文件到/etc/my.cnf,如root@ubuntu:/data/mariadb# cp backup-my.cnf /etc/my.cnf //这样就可以不用修改/etc/init.d/mysqld文件中的conf启动mysql:root@ubuntu:/data/mariadb#/etc/init.d/mysqld start //未报错,即表示是正常的root@ubuntu:/data/mariadb#ps aux | grep mysql //查看是否有mysql进程root 5706 0.0 0.0 4464 1624 pts/0 S 09:53 0:00 /bin/sh /data/mysql/bin/mysqld_safe –datadir=/data/mariadb –pid-file=/data/mariadb/ubuntu.pidmysql 5900 0.3 7.2 1572664 586972 pts/0 Sl 09:53 0:08 /data/mysql/bin/mysqld –basedir=/data/mysql –datadir=/data/mariadb –plugin-dir=/data/mysql/lib/plugin –user=mysql –log-error=/data/mariadb/ubuntu.err –pid-file=/data/mariadb/ubuntu.pidroot 6009 0.0 0.0 13464 2124 pts/1 S+ 10:29 0:00 grep –color=auto mysqlroot@ubuntu:/data/mariadb#
附上阿里云文档上的操作:操作步骤本例以本地云服务器为 RHEL6/x64 系统,备份文件存储路径为/home/mysql/为例。下载云数据库物理备份文件并上传至目标云服务器。备份文件获取方法请参见下载备份数据。如果目标云服务器可以访问源实例,您也可以使用wegt “url”下载备份文件。其中url为备份文件下载地址。切换路径到备份文件所在路径。cd /home/mysql/解压备份文件。tar vizxf filename.tar.gz其中,filename.tar.gz为备份文件名。检查解压后文件包含的数据库是否正确。cd filename/ll系统显示如下,其中db0dz1rv11f44yg2、mysql和test为云数据库中存在的数据库。-rw-r–r– 1 root root 269 Aug 19 18:15 backup-my.cnfdrwxr-xr-x 2 root root 4096 Aug 21 10:31 db0dz1rv11f44yg2-rw-rw—- 1 root root 209715200 Aug 7 10:44 ibdata1drwxr-xr-x 2 root root 4096 Aug 21 10:31 mysqldrwxr-xr-x 2 root root 4096 Aug 21 10:31 test-rw-r–r– 1 root root 10 Aug 19 18:15 xtrabackup_binary-rw-r–r– 1 root root 23 Aug 19 18:15 xtrabackup_binlog_info-rw-r–r– 1 root root 77 Aug 19 18:15 xtrabackup_checkpoints-rw-r–r– 1 root root 2560 Aug 19 18:15 xtrabackup_logfile-rw-r–r– 1 root root 72 Aug 19 18:15 xtrabackup_slave_info恢复数据文件。innobackupex –defaults-file=./backup-my.cnf –apply-log ./系统显示innobackupex: completed OK!,则数据恢复成功。修改配置文件。将解压文件backup-my.cnf中的innodb_fast_checksum、innodb_page_size、innodb_log_block_size注释掉,并且添加datadir=/home/mysql,如下所示。# This MySQL options file was generated by innobackupex-1.5.1.# The MySQL Server[mysqld]innodb_data_file_path=ibdata1:200M:autoextendinnodb_log_files_in_group=2innodb_log_file_size=524288000#innodb_fast_checksum=0#innodb_page_size=16364#innodb_log_block_size=512datadir=/home/mysql/重装 MySQL 系统库,取得数据库的 root 权限。rm -rf mysqlmysql_install_db –user=mysql –datadir=/home/mysql/系统显示如下,则 mysql 系统库重装成功。Installing MySQL system table…OKFilling help table…OK修改文件属主。chown -R mysql:mysql /home/mysql/启动 mysqld 进程。mysqld_safe –defaults-file=/home/mysql/backup-my.cnf &使用客户端登录数据库。mysql –u root –p验证数据库是否完整。show databases;系统显示入选,则数据库恢复成功。+——————–+| Database |+——————–+| information_schema || db0dz1rv11f44yg2 || mysql || performance_schema || test |+——————–+利用逻辑备份文件导出本例以本地云服务器为 RHEL6/x64 系统,备份文件存储路径为/home/mysql/为例。操作步骤下载云数据库逻辑备份文件并上传至目标云服务器。备份文件获取方法请参见下载备份数据。如果目标云服务器可以访问源实例,您也可以使用wegt “url”下载备份文件。其中url为备份文件下载地址。切换路径到备份文件所在路径。cd /home/mysql/解压备份文件。tar vizxf filename.tar.gz其中,filename.tar.gz为备份文件名。解压 sql 压缩文件。gunzip filename.sql.gz其中,filename.sql.gz为 sql 压缩文件名。执行逻辑导入操作,将数据导入目标数据库。mysql -u userName -p -h hostName -P port dbName 其中,filename.sql为解压后的 sql 文件。看完如何实现迁移RDS for MySQL数据到本地 MySQL这篇文章,大家觉得怎么样?如果想要了解更多相关,可以继续关注我们的行业资讯板块。
部署计划本次部署采用3台服务器,mha-manager不单独使用一台服务器安装,生产上可以单独出来,本次使用采用centos6.9系统(使用 http://youprince.blog.51cto.com/9272426/1974967优化 ),mysql5.…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。