中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現遷移RDS for MySQL數據到本地 MySQL

發布時間:2020-06-04 17:28:37 來源:網絡 閱讀:407 作者:三月 欄目:MySQL數據庫

不知道大家之前對類似如何實現遷移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.gz

root@ubuntu:/data# mv  mysql-5.6.36-linux-glibc2.5-x86_64  mysql

root@ubuntu:/data#cd  mysql

root@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-xtrabackup

root@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  mysql

root@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=innodb

innodb_data_file_path=ibdata1:200M:autoextend

innodb_log_files_in_group=2

innodb_log_file_size=1572864000

#innodb_fast_checksum=false

#innodb_page_size=16384

#innodb_log_block_size=512

innodb_undo_directory=.

innodb_undo_tablespaces=0

datadir=/data/mariadb

#rds_encrypt_data=false

#innodb_encrypt_algorithm=aes_128_ecb

初始化操作:

進入剛解壓的mysql安裝的位置/data/mysql

root@ubuntu:~# cd /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 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# ls

binary-configure  magic  my-default.cnf  mysqld_multi.server  mysql-log-rotate  mysql.server

root@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/mysql

datadir=/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.pid

mysql     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.pid

root      6009  0.0  0.0  13464  2124 pts/1    S+   10:29   0:00 grep --color=auto mysql

root@ubuntu:/data/mariadb#


附上阿里云文檔上的操作:

操作步驟

本例以本地云服務器為 RHEL6/x64 系統,備份文件存儲路徑為 /home/mysql/ 為例。

  1. 下載云數據庫 物理備份文件 并上傳至目標云服務器。備份文件獲取方法請參見 下載備份數據。如果目標云服務器可以訪問源實例,您也可以使用 wegt "url" 下載備份文件。其中 url 為備份文件下載地址。

  2. 切換路徑到備份文件所在路徑。

  1. cd /home/mysql/

  1. 解壓備份文件。

  1. tar vizxf filename.tar.gz

其中,filename.tar.gz 為備份文件名。

  1. 檢查解壓后文件包含的數據庫是否正確。

  1. cd filename/

  2. ll

系統顯示如下,其中 db0dz1rv11f44yg2、mysql 和 test 為云數據庫中存在的數據庫。

  1. -rw-r--r-- 1 root root       269 Aug 19 18:15 backup-my.cnf

  2. drwxr-xr-x 2 root root      4096 Aug 21 10:31 db0dz1rv11f44yg2

  3. -rw-rw---- 1 root root 209715200 Aug  7 10:44 ibdata1

  4. drwxr-xr-x 2 root root      4096 Aug 21 10:31 mysql

  5. drwxr-xr-x 2 root root      4096 Aug 21 10:31 test

  6. -rw-r--r-- 1 root root        10 Aug 19 18:15 xtrabackup_binary

  7. -rw-r--r-- 1 root root        23 Aug 19 18:15 xtrabackup_binlog_info

  8. -rw-r--r-- 1 root root        77 Aug 19 18:15 xtrabackup_checkpoints

  9. -rw-r--r-- 1 root root      2560 Aug 19 18:15 xtrabackup_logfile

  10. -rw-r--r-- 1 root root        72 Aug 19 18:15 xtrabackup_slave_info

  1. 恢復數據文件。

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

系統顯示 innobackupex: completed OK!,則數據恢復成功。

  1. 修改配置文件。將解壓文件 backup-my.cnf 中的 innodb_fast_checksum、innodb_page_size、innodb_log_block_size 注釋掉,并且添加 datadir=/home/mysql,如下所示。

  1. # This MySQL options file was generated by innobackupex-1.5.1.

  2. # The MySQL Server

  3. [mysqld]

  4. innodb_data_file_path=ibdata1:200M:autoextend

  5. innodb_log_files_in_group=2

  6. innodb_log_file_size=524288000

  7. #innodb_fast_checksum=0

  8. #innodb_page_size=16364

  9. #innodb_log_block_size=512

  10. datadir=/home/mysql/

  1. 重裝 MySQL 系統庫,取得數據庫的 root 權限。

  1. rm -rf mysql

  2. mysql_install_db --user=mysql --datadir=/home/mysql/

系統顯示如下,則 mysql 系統庫重裝成功。

  1. Installing MySQL system table...

  2. OK

  3. Filling help table...

  4. OK

  1. 修改文件屬主。

  1. chown -R mysql:mysql /home/mysql/

  1. 啟動 mysqld 進程。

  1. mysqld_safe --defaults-file=/home/mysql/backup-my.cnf &

  1. 使用客戶端登錄數據庫。

  1. mysql –u root –p

  1. 驗證數據庫是否完整。

  1. show databases;

系統顯示入選,則數據庫恢復成功。

  1. +--------------------+

  2. | Database           |

  3. +--------------------+

  4. | information_schema |

  5. | db0dz1rv11f44yg2   |

  6. | mysql              |

  7. | performance_schema |

  8. | test               |

  9. +--------------------+

利用邏輯備份文件導出

本例以本地云服務器為 RHEL6/x64 系統,備份文件存儲路徑為 /home/mysql/ 為例。

操作步驟

  1. 下載云數據庫 邏輯備份文件 并上傳至目標云服務器。備份文件獲取方法請參見 下載備份數據。如果目標云服務器可以訪問源實例,您也可以使用 wegt "url" 下載備份文件。其中 url 為備份文件下載地址。

  2. 切換路徑到備份文件所在路徑。

  1. cd /home/mysql/

  1. 解壓備份文件。

  1. tar vizxf filename.tar.gz

其中,filename.tar.gz 為備份文件名。

  1. 解壓 sql 壓縮文件。

  1. gunzip filename.sql.gz

其中,filename.sql.gz 為 sql 壓縮文件名。

  1. 執行邏輯導入操作,將數據導入目標數據庫。

  1. mysql -u userName -p -h hostName -P port dbName < filename.sql

其中,filename.sql 為解壓后的 sql 文件。

看完如何實現遷移RDS for MySQL數據到本地 MySQL這篇文章,大家覺得怎么樣?如果想要了解更多相關,可以繼續關注我們的行業資訊板塊。 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

苍梧县| 介休市| 宜州市| 鄢陵县| 西安市| 宁南县| 象州县| 滕州市| 黔东| 柳江县| 巴彦县| 阿合奇县| 上杭县| 五台县| 平原县| 绥江县| 黑河市| 青岛市| 措勤县| 青龙| 鄯善县| 沽源县| 泉州市| 邻水| 马山县| 新宁县| 博爱县| 佛山市| 衡山县| 瑞安市| 河北区| 安宁市| 安徽省| 子长县| 缙云县| 波密县| 虎林市| 宕昌县| 桦川县| 岑溪市| 合水县|