企业实战_13_MyCat清除冗余数据
生活随笔
收集整理的這篇文章主要介紹了
企业实战_13_MyCat清除冗余数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
接上一篇:企業實戰_12_MyCat水平擴展_分庫分表
https://gblfy.blog.csdn.net/article/details/100059793
文章目錄
- 一、復制鏈路停止
- 1. 清除冗余數據思路
- 2. 登錄node4
- 3. 登錄node3
- 4. 登錄node2
- 二、刪除冗余數據
- 2.1. 刪除訂單模塊無關的表
- 2.2. 刪除商品模塊無關的表
- 2.3. 刪除商品模塊無關的表
- 三、驗證
- 3.1. 驗證邏輯庫中的表數量
- 3.2. 查詢邏輯表是否正常返回數據
一、復制鏈路停止
1. 清除冗余數據思路
首先,把node2、node3、node4的主從復制鏈路停止掉。
因為現在呢?雖然把瑩瑩切換到了mycat上,并且直接通過mycat對后端的3個物理數據庫讀寫訪問了,但是沒實際上呢?
如果在node1上寫數據,還會將數據同步到node2、node3、node4節點上,這樣顯然達不到垂直拆分的目的,垂直拆分呢,一方面想分擔寫的負載,另一方面呢,想減少每每個節點中數據數據量大小,要刪除掉原本不屬于該節點的數據。
2. 登錄node4
104節點
# 登錄數據庫 mysql -uroot -p Enter password: 123456# 停止復制鏈路 stop slave;# 清除主從同步的信息 reset slave all;# 查看鏈路,如果沒有返回說明已經停止 show slave status \G如下所示:
mysql> reset slave all; Query OK, 0 rows affected (0.01 sec)mysql> show slave status \G Empty set (0.00 sec)mysql>3. 登錄node3
103節點
# 登錄數據庫 mysql -uroot -p Enter password: 123456# 停止復制鏈路 stop slave;# 清除主從同步的信息 reset slave all;# 查看鏈路,如果沒有返回說明已經停止 show slave status \G如下所示:
mysql> reset slave all; Query OK, 0 rows affected (0.01 sec)mysql> show slave status \G Empty set (0.00 sec)mysql>4. 登錄node2
102節點
# 登錄數據庫 mysql -uroot -p Enter password: 123456# 停止復制鏈路 stop slave;# 清除主從同步的信息 reset slave all;# 查看鏈路,如果沒有返回說明已經停止 show slave status \G如下所示:
mysql> reset slave all; Query OK, 0 rows affected (0.01 sec)mysql> show slave status \G Empty set (0.00 sec)mysql>二、刪除冗余數據
2.1. 刪除訂單模塊無關的表
登錄node2操作102節點
# 登錄mysql mysql -uroot -p# 使用order_db數據庫 use order_db;# 刪除前查看表有哪些? show tables;# 刪除前他與order模塊無關的表,刪除之前建議先將表盒數據進行備份# 刪除除了訂單和倉配模塊的表 drop table product_brand_info; drop table product_category; drop table product_comment; drop table product_info; drop table product_supplier_info; drop table product_pic_info;drop table customer_balance_log; drop table customer_inf; drop table customer_level_inf; drop table customer_login; drop table customer_login_log; drop table customer_point_log;# 刪除后查看表有哪些? show tables;mysql> show tables; +---------------------+ | Tables_in_order_db | +---------------------+ | order_cart | | order_customer_addr | | order_detail | | order_master | | region_info | | serial | | shipping_info | | warehouse_info | | warehouse_proudct | +---------------------+ 9 rows in set (0.00 sec)mysql>2.2. 刪除商品模塊無關的表
登錄node3操作103節點
# 登錄數據庫 mysql -uroot -p#使用指定數據庫 use product_db;# 刪除除了訂單和倉配模塊的表 drop table customer_balance_log; drop table customer_inf; drop table customer_level_inf; drop table customer_login; drop table customer_login_log; drop table customer_point_log;drop table order_master; drop table order_detail; drop table order_cart; drop table order_customer_addr; drop table region_info; drop table shipping_info; drop table warehouse_info; drop table warehouse_proudct; drop table serial;# 刪除后查看表有哪些? show tables;mysql> show tables; +-----------------------+ | Tables_in_product_db | +-----------------------+ | product_brand_info | | product_category | | product_comment | | product_info | | product_pic_info | | product_supplier_info | +-----------------------+ 6 rows in set (0.00 sec)mysql>2.3. 刪除商品模塊無關的表
登錄node4操作104節點
# 登錄數據庫 mysql -uroot -p#使用指定數據庫 use customer_db;# 刪除除了訂單和倉配模塊的表 drop table order_master; drop table order_detail; drop table order_cart; drop table order_customer_addr; drop table region_info; drop table shipping_info; drop table warehouse_info; drop table warehouse_proudct; drop table serial;drop table product_brand_info; drop table product_category; drop table product_comment; drop table product_info; drop table product_supplier_info; drop table product_pic_info;# 刪除后查看表有哪些? show tables;mysql> show tables; +-----------------------+ | Tables_in_customer_db | +-----------------------+ | customer_balance_log | | customer_inf | | customer_level_inf | | customer_login | | customer_login_log | | customer_point_log | +-----------------------+ 6 rows in set (0.00 sec)mysql>三、驗證
3.1. 驗證邏輯庫中的表數量
# 從任意節點重新登錄mycat mysql -uapp_imooc -p123456 -h192.168.92.101 -P8066# 使用imooc_db數據庫 use imooc_db;# 查看邏輯庫中的表 show tables;# 執行日志 mysql> show tables; +-----------------------+ | Tables in imooc_db | +-----------------------+ | customer_balance_log | | customer_inf | | customer_level_inf | | customer_login | | customer_login_log | | customer_point_log | | order_cart | | order_customer_addr | | order_detail | | order_master | | product_brand_info | | product_category | | product_comment | | product_info | | product_pic_info | | product_supplier_info | | region_info | | shipping_info | | warehouse_info | | warehouse_proudct | +-----------------------+ 20 rows in set (0.00 sec)mysql> 從上面可以看出,imooc_db邏輯庫庫中的表并減少,說明,我們看到的實際是邏輯庫中的表,,而非物理庫中的表。3.2. 查詢邏輯表是否正常返回數據
# 查詢邏輯庫中的某個表,驗證是否正常返回數據 mysql> select count(*) from region_info; +--------+ | COUNT0 | +--------+ | 1 | +--------+ 1 row in set (1.06 sec)mysql> 從上面可以看出,數據可以正常返回下一篇:企業實戰_14_MyCat跨分片查詢_全局表
https://gblfy.blog.csdn.net/article/details/100059621
總結
以上是生活随笔為你收集整理的企业实战_13_MyCat清除冗余数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vba宏加密
- 下一篇: CentOS 7 安装版本管理 GitL