欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL 常見數(shù)據(jù)拆分辦法

 更新時間:2016年07月16日 22:43:35   投稿:mdxy-dxy  
在生產(chǎn)環(huán)境中,由于業(yè)務(wù)的增長或者業(yè)務(wù)的拆分,DBA經(jīng)常需要拆庫操作。那么我們常見的拆庫手段有哪些呢

在生產(chǎn)環(huán)境中,由于業(yè)務(wù)的增長或者業(yè)務(wù)的拆分,DBA經(jīng)常需要拆庫操作。那么我們常見的拆庫手段有哪些呢?

我這里提供幾種解決辦法:

1. 使用mysqldump 把表邏輯倒出,然后再source 到其它地方
2. 使用xtrabackup 把表、或者庫邏輯備份出,然后再recovery出一個實例
3. 使用MySQL自帶的表空間轉(zhuǎn)移(Transport)[這個需要MySQL 5.6.6 以上版本支持]

I: 先來看一下MySQL 的 Transport 表空間的特性吧

比如我們要把  tab_test1 從 db_A 移動到 db_B ,那么我們需要做這么一系列動作:

Step 1: use db_A; show create table tab_test1;(首先,拿到需要的表結(jié)構(gòu))
Step 2: use db_B; create table tab_test1; alter tale tab_test1 discard tablespace;(discard tablespace 就是把ibd文件刪掉,只留下.frm文件)(其次,到目標(biāo)庫刪除掉idb文件)
Step 4: use db_A; flush table test122 for export;(把相關(guān)表的內(nèi)存數(shù)據(jù)寫入到數(shù)據(jù)庫)
Step 5: 拷貝 tab_test1.ibd 文件到 db_B/   目錄下;(操作系統(tǒng)層執(zhí)行拷貝ibd文件操作)
Step 6: use db_A; unlock tables; (源庫上解鎖表)
Step 7: use db_B; alter table tab_test1 import tablespace;(目標(biāo)庫執(zhí)行表空間導(dǎo)入)

執(zhí)行完上邊幾個步驟,我們就完成了 在庫之間遷移 某些個表的操作了。


II: 再來看一下 xtrabackup 導(dǎo)出部分表,以達(dá)到遷移目的

 Step 1: 我們需要使用xtrabackup 備份部分表

nohup perl /home/ddb/tmp/xtrabackup/bin/innobackupex-1.5.1 --ibbackup=/home/tmp/xtrabackup/bin/xtrabackup_55 --user=root --password=123 --defaults-file=/home/my.cnf  --slave-info  --tables-file=/mnt/back_tables.txt /mnt/backup_1 
 
Step 2:  應(yīng)用日志,進行恢復(fù)操作

nohup perl /home/tmp/percona-xtrabackup-2.1.9-Linux-x86_64/bin/innobackupex-1.5.1 --ibbackup=/home/tmp/percona-xtrabackup-2.1.9-Linux-x86_64/bin/xtrabackup_55 --export --apply-log --defaults-file=/home/node-1-1/backup-my.cnf /home/node-1-1/ > /tmp/r.log 2>&1 &
 
Step 3: 重新起實例,配置復(fù)制關(guān)系,只復(fù)制部分表

    my.cnf 文件配置: Replicate_Wild_Do_Table/Replicate_Wild_Ignore_Table
 
執(zhí)行完上邊幾個步驟,我們就完成了表的遷移操作,并且新起了個實例,達(dá)到了分庫的目的。
 

III:最后我們就看一下 mysqldump 的姿勢吧

    額, 這個就不多啰嗦了吧, mysqldump 做的事情就是 一些邏輯的導(dǎo)出, 倒出來的數(shù)據(jù)我們是可以用人肉可見的。    這個需要注意的一點就是  --single-transcation 選項
 
關(guān)于以上幾種辦法,我們在實際工作中需要 考慮 服務(wù)器的資源、內(nèi)存容量等, 需要結(jié)合實際情況來使用 合適的辦法進行拆庫操作。

相關(guān)文章

  • linux系統(tǒng)下安裝配置解壓版的MySQL數(shù)據(jù)庫圖解

    linux系統(tǒng)下安裝配置解壓版的MySQL數(shù)據(jù)庫圖解

    這篇文章主要介紹了linux系統(tǒng)下安裝配置解壓版的MySQL數(shù)據(jù)庫的相關(guān)資料,需要的朋友可以參考下
    2017-12-12
  • 解析mysql 緩存如何使用內(nèi)存

    解析mysql 緩存如何使用內(nèi)存

    本篇文章是對mysql中的緩存如何使用內(nèi)存進行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL導(dǎo)致索引失效的幾種情況

    MySQL導(dǎo)致索引失效的幾種情況

    本文主要介紹了MySQL導(dǎo)致索引失效的幾種情況,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • 數(shù)據(jù)庫設(shè)計工具MySQL?Workbench使用教程(超級詳細(xì)!)

    數(shù)據(jù)庫設(shè)計工具MySQL?Workbench使用教程(超級詳細(xì)!)

    MySQL?Workbench為數(shù)據(jù)庫管理員、程序開發(fā)者和系統(tǒng)規(guī)劃師提供可視化的Sql開發(fā)、數(shù)據(jù)庫建模、以及數(shù)據(jù)庫管理功能,下面這篇文章主要給大家介紹了關(guān)于MySQL設(shè)計工具Workbench使用的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • MYSQL本地安裝以及出現(xiàn)的問題解決

    MYSQL本地安裝以及出現(xiàn)的問題解決

    這篇文章主要給大家介紹了關(guān)于MYSQL本地安裝以及出現(xiàn)問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用mysql具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • mysql如何定時自動新增分區(qū)

    mysql如何定時自動新增分區(qū)

    這篇文章主要介紹了mysql如何定時自動新增分區(qū)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Mysql分區(qū)表的管理與維護

    Mysql分區(qū)表的管理與維護

    改變一個表的分區(qū)方案只需使用alter table 加 partition_options 子句就可以了。這篇文章主要介紹了Mysql分區(qū)表的管理與維護,非常不錯,感興趣的朋友一起學(xué)習(xí)吧,需要的朋友可以參考下
    2016-08-08
  • 簡單談?wù)凪ySQL的半同步復(fù)制

    簡單談?wù)凪ySQL的半同步復(fù)制

    從MySQL5.5開始,MySQL以插件的形式支持半同步復(fù)制。如何理解半同步呢?今天我們就來詳細(xì)講解下,希望大家能夠喜歡。
    2017-03-03
  • Linux下安裝MySQL5.7.19問題小結(jié)

    Linux下安裝MySQL5.7.19問題小結(jié)

    第一次在自己虛機上安裝mysql 中間碰到很多問題 在這里記下來,特此分享到腳本之家平臺供大家參考
    2017-08-08
  • Mysql忘記密碼怎么重置密碼的幾種實現(xiàn)方法

    Mysql忘記密碼怎么重置密碼的幾種實現(xiàn)方法

    本文主要介紹了Mysql忘記密碼怎么重置密碼的幾種實現(xiàn)方法,每種方法都有其適用的情況,根據(jù)具體情況選擇合適的方法,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10

最新評論