首先應認真看下阿裡雲官方文檔: RDS MySQL 實體備份檔案恢複到自建資料庫
本人實踐的資料庫版本是5.6,恢複資料的Ubuntu版本是14.04和16.04兩個版本,這兩個版本預設資料庫都不是5.6,需要單獨安裝;
另外
的版本也請按照阿裡雲的提示下載下傳對應版本。我使用的是
Percona Xtrabackup
2.3.7
apt-get install software-properties-common
sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'
sudo apt-get update
sudo apt install mysql-server-5.6
建議這裡直接安裝5.6.36+版本,可能需要通過源碼,或者去mysql官方下載下傳Ubuntu安裝包,官方沒有Ubuntu 16.04的包,可以選擇Ubuntu 14的預編譯包
建議這裡直接安裝5.6.36+版本,可能需要通過源碼,或者去mysql官方下載下傳Ubuntu安裝包,官方沒有Ubuntu 16.04的包,可以選擇Ubuntu 14的預編譯包
前面步驟如阿裡雲官方文檔所示即可,但是在恢複資料庫時遇到了問題
setenforce 0
## vim /etc/apparmor.d/usr.sbin.mysqld
/root/mysql/data/ r,
/root/mysql/data/** rwk,
增加資料目錄權限即可,如果安裝了5.6.36可能要調整配置檔案目錄權限,看錯誤提示操作即可
增加資料目錄權限即可,如果安裝了5.6.36可能要調整配置檔案目錄權限,看錯誤提示操作即可
/etc/mysql/mysql.conf.d/ r,
/etc/mysql/mysql.conf.d/* r,
在啟動過程中,可能會遇到某些未知問題,可以通過添加 innodb_force_recovery = 6
參數來嘗試修複,如果仍然出現下面錯誤,請更新mysql版本: It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 338332 K bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0 thread_stack 0x40000
這個問題,在mysql後續版本中解決掉了,保證你的mysql版本在5.6.36+以上,我是更新到5.6.44解決的問題 之後啟動後,即可導出相關資料即可!
雲伺服器ECS位址:阿裡雲·雲小站