一次mysql遷移至OceanBase操作實(shí)戰(zhàn)記錄
前言
mysqldump 是 MySQL 數(shù)據(jù)庫系統(tǒng)中的一個(gè)命令行工具,用于創(chuàng)建 MySQL 數(shù)據(jù)庫的邏輯備份。它能夠?qū)С鰯?shù)據(jù)庫的結(jié)構(gòu)和數(shù)據(jù)為 SQL 語句文件,這個(gè)文件可以用于恢復(fù)數(shù)據(jù)庫或在其他服務(wù)器上重建數(shù)據(jù)庫。
PS:本次遷移使用了最基本的mysqldump導(dǎo)出進(jìn)行后續(xù)遷移操作。
源庫導(dǎo)出前的配置及導(dǎo)出腳本
本次源數(shù)據(jù)版本:mysql 8.0.31
導(dǎo)出之前的操作---數(shù)據(jù)庫設(shè)置參數(shù):
set persist default_collation_for_utf8mb4=utf8mb4_general_ci;
導(dǎo)出操作:
/mysql/bin//mysqldump -h 192.168.40.129 -uroot -p'mysqlpasswd' -P3306 --single-transaction --master-data=2 --set-gtid-purged=OFF --hex-blob --default-character-set=utf8mb4 --databases shanjiadb > shanjiadb_to_ob.sql
--single-transaction:確保一致性導(dǎo)出。
--master-data=2:記錄 binlog 位置,可用于后續(xù)搭建增量同步(如果需要)。
--set-gtid-purged=OFF:如果 MySQL 未開啟 GTID,可忽略此選項(xiàng)。
處理導(dǎo)出后的SQL文件
檢查 SQL 文件,可能需要手動(dòng)修改一些 OceanBase不兼容的DDL或語法(例如,將LOCK語句注釋掉).
如果前面沒做字符集設(shè)置就導(dǎo)出了,可以用下列腳本批量替換:
sed -i 's utf8mb3_general_ci utf8mb4_general_ci g' *.sql sed -i 's utf8mb4_0900_ai_ci utf8mb4_general_ci g' *.sql sed -i 'CHARSET=utf8mb3 CHARSET=utf8mb4' *.sql
目標(biāo)OceanBase準(zhǔn)備及導(dǎo)入操作
前面已經(jīng)將前期準(zhǔn)備做好了,接下來可以在目標(biāo)端ob數(shù)據(jù)庫進(jìn)行后續(xù)操作了。
在備份的表結(jié)構(gòu)語句里,可能包含外鍵。在導(dǎo)入 OceanBase MySQL 里時(shí),如果外鍵依賴的表沒有創(chuàng)建,導(dǎo)入腳本會(huì)報(bào)錯(cuò),因此在導(dǎo)入之前需要禁用外鍵檢查約束。
使用 source 命令或 mysql 客戶端導(dǎo)入。
mysql> use shanjiaobdb; mysql> source /data/backup/shanjiadb_to_ob.sql; 導(dǎo)入大量數(shù)據(jù)時(shí),建議先禁用外鍵檢查以提高速度: SET FOREIGN_KEY_CHECKS=0; -- 導(dǎo)入操作 SET FOREIGN_KEY_CHECKS=1;
本次的遷移操作,因某方便原因,其他一些細(xì)節(jié)點(diǎn),并沒有放上去,姑且當(dāng)個(gè)筆記記錄吧。
文參考文檔:
https://www.oceanbase.com/docs/common-oceanbase-database-standalone-1000000003577510
到此這篇關(guān)于mysql遷移至OceanBase操作實(shí)戰(zhàn)記錄的文章就介紹到這了,更多相關(guān)mysql遷移至OceanBase內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL8 排名窗口函數(shù)實(shí)戰(zhàn)
本文闡明SQL三個(gè)排名函數(shù)處理并列名次時(shí)的區(qū)別,包括RANK()跳躍,DENSE_RANK()連續(xù),ROW_NUMBER()分配唯一序號(hào),下面就來詳細(xì)的介紹一下,感興趣的可以了解一下2026-02-02
mysql導(dǎo)出表的字段和相關(guān)屬性的步驟方法
在本篇文章里小編給大家分享了關(guān)于mysql導(dǎo)出表的字段和相關(guān)屬性的步驟方法,有需要的朋友們跟著學(xué)習(xí)下。2019-01-01
Mysql數(shù)據(jù)庫表定期備份的實(shí)現(xiàn)詳解
這篇文章主要介紹了Mysql數(shù)據(jù)庫表定期備份的實(shí)現(xiàn)詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03
Mysql服務(wù)器的安裝配置與啟動(dòng)關(guān)閉方法詳解
MySQL 是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),在 WEB 應(yīng)用方面 MySQL 是最好的 RDBMS(Relational Database Management System:關(guān)系數(shù)據(jù)庫管理系統(tǒng))應(yīng)用軟件之一2021-10-10
MySQL中處理大數(shù)據(jù)表的3種方案的實(shí)現(xiàn)與對(duì)比
這篇文章主要為大家詳細(xì)介紹了MySQL中處理大數(shù)據(jù)表的3種方案的實(shí)現(xiàn)與對(duì)比,文中的示例代碼講解詳細(xì),有需要的小伙伴可以根據(jù)需要進(jìn)行選擇2025-10-10

