恢复阿里云mysql线上备份数据

所有文件相关操作都在 /home/mysql/recovery-date/ 目录下操作

删除mysql容器

docker ps

docker stop

docker rm

替换备份数据

rm -rf ./*

tar xivf

恢复数据文件

innobackupex --defaults-file=./backup-my.cnf --apply-log ./

修改目录权限

chown -R mysql:mysql ./*

修改权限为mysql用户

chmod -R 777 ./

修改back-my.cnf

innodb_checksum_algorithm=innodb

#innodb_log_checksum_algorithm=innodb

innodb_data_file_path=ibdata1:200M:autoextend

innodb_log_files_in_group=2

innodb_log_file_size=1048576000

#innodb_fast_checksum=false

#innodb_page_size=16384

#innodb_log_block_size=512

innodb_undo_directory=.

innodb_undo_tablespaces=0

#rds_encrypt_data=false

#innodb_encrypt_algorithm=aes_128_ecb

#此处制定被恢复的文件目录

datadir=/opt/rds-recover3

执行数据库重建操作

mysql_install_db --user=mysql --defaults-file=./backup-my.cnf --datadir=./

创建mysql容器

docker run -p 13306:3306 --name recover-20190322-mysql -v /home/mysql/recover-20190322-mysql_cnf:/etc/mysql/conf.d -v /home/mysql/recover-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=jinbill@ccb123qwe@@@ -d mysql:5.6 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --skip-grant-tables --lower_case_table_names=1

修改MySQL时区
  1. 进入mysql contanier
    docker exec -ti containerid bash
  2. 查看当前时区
    date -R
  3. 修改当前时区
    cp /usr/share/zoneinfo/Asia/Hong_Kong /etc/localtime
  4. 查看更新后的时区
    date -R
  5. 退出容器
    exit
  6. 重启容器
    sudo docker restart containerid

你可能感兴趣的:(恢复阿里云mysql线上备份数据)