mysql分表之水平分割

来源:https://www.cnblogs.com/wchwch/archive/2019/12/13/12036099.html
-Advertisement-
Play Games

一、背景 老大安排要對某張大容量表進行分割,根據年份分割成多張表。 二、水平分割 水平拆分是指數據表行的拆分,表的行數超過百萬行時,就會變慢,這時可以把一張的表的數據拆成多張表來存放。 定義規則分表後,表結構與原表相同,查詢性能會提高。 ····· 三、步驟。 做好備份 根據年份創建分區表(t_us ...


一、背景

  1. 老大安排要對某張大容量表進行分割,根據年份分割成多張表。

二、水平分割

  1. 水平拆分是指數據表行的拆分,表的行數超過百萬行時,就會變慢,這時可以把一張的表的數據拆成多張表來存放。
  2. 定義規則分表後,表結構與原表相同,查詢性能會提高。
  3. ·····

三、步驟。

  1. 做好備份
  2. 根據年份創建分區表(t_user_data_年份)
    1 -- 創建和原表結構相同的分區表
    2 create table t_user_data_2019 like t_sys_user;
    3 create table t_user_data_2018 like t_sys_user;
    4 create table t_user_data_2017 like t_sys_user;
    5 create table t_user_data_2016 like t_sys_user;
  3. 找出各年份的數據,並將其插入到分區表
    1 -- 找出各個年份的數據,並將其插入到分區表
    2 select * from t_sys_user where DATE_FORMAT(create_time,'%Y') = '2017';
    3 INSERT INTO  t_user_data_2017 select * from t_sys_user where DATE_FORMAT(create_time,'%Y') = '2017';
    4 select * from t_sys_user where DATE_FORMAT(create_time,'%Y') = '2018';
    5 INSERT INTO  t_user_data_2018 select * from t_sys_user where DATE_FORMAT(create_time,'%Y') = '2018';
    6 select * from t_sys_user where DATE_FORMAT(create_time,'%Y') = '2019';
    7 INSERT INTO  t_user_data_2019 select * from t_sys_user where DATE_FORMAT(create_time,'%Y') = '2019';
  4. 記錄及備份

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 回到目錄 1. 四種BJT模型概述 對BJT晶體管建模的基本思路就是,用電路原理中的五大基本元件(電阻、電容、電感、電源、受控源)構建一個電路,使其在一定工作條件下能等效非線性半導體器件的實際工作。一旦確定了交流等效電路,電路中的BJT就可以用這個等效電路來替代,然後用基本的電路計算方程,就可以大致 ...
  • CentOs系統基本配置,包括修改主機名,創建用戶並授權,ssh免密登錄 1 永久修改主機名 sudo vim /etc/hostname 把原主機名xxx改為master(在從主機上則改為相應的slave) sudo vim /etc/hosts 把/etc/hosts中xxx修改為剛剛改過的主機 ...
  • 字元集修改做過幾次了,這次感覺還是有點不順,走了彎路,再記一遍【概況】準備搭建RAC+RAC DG,發現兩端字元集不大一致,擔心到時出問題。 【目標】將備庫NLS_NCHAR_CHARACTERSET修改成與主庫一致。--備NLS_NCHAR_CHARACTERSET UTF8修改為--主NLS_N ...
  • 安裝MySQL中YUM預設安裝路徑是/var/lib/mysql下,有時候該目錄分配的磁碟空間並不大,需要遷移到新的磁碟目錄 df -h 查看磁碟空間大小 本次遷移到 /home目錄下 1.在home目錄下創建data目錄作為預設路徑 cd /home mkdir data 2.關掉MySQL se ...
  • 前言 Hello我又來了,快年底了,作為一個有抱負的碼農,我想給自己攢一個年終總結。索性這次把資料庫中最核心的也是最難搞懂的內容,也就是索引,分享給大家。 這篇博客我會談談對於索引結構我自己的看法,以及分享如何從零開始一層一層向上最終理解索引結構,書接上文。 多頁模式 在多頁模式下,MySQL終於可 ...
  • 今天學習分散式的項目搭建,第二天使用 intelliJ IDEA 漸漸適應了操作 搭建分散式項目,我把他分為一個父工程和14個子工程 如圖是各項目的關係依賴: idea包結構: 搭建好我們所需要的工程之後,我們就需要配置XML文件和POM.xml文件 父工程的POM文件 <!-- 集中定義依賴版本號 ...
  • 資料庫 數據的存儲:將數據放到表中,表再放到庫中。 一個資料庫中可以有多個表,每個表都有一個名字,用來標識自己。表名具有唯一性。 表由列組成,我們也稱為欄位。每個欄位描述了它所含有的數據的意義表由列組成,我們也稱為欄位。每個欄位描述了它所含有的數據的意義 表中的數據是按行存儲的,一行即為一條記錄。 ...
  • 1、使用like關鍵字模糊查詢時,% 放在前面索引不起作用,只有“%”不在第一個位置,索引才會生效(like ‘%文’–索引不起作用)2、使用聯合索引時,只有查詢條件中使用了這些欄位中的第一個欄位,索引才會生效3、使用OR關鍵字的查詢,查詢語句的查詢條件中只有OR關鍵字,且OR前後的兩個條件中的列都 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...