亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網(wǎng)絡(luò),我們將竭誠(chéng)為您提供優(yōu)質(zhì)的服務(wù)! 誠(chéng)征網(wǎng)絡(luò)推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購(gòu)買流程 | 付款方式 | 聯(lián)系我們 [ 會(huì)員登錄/注冊(cè) ]
促銷推廣
客服中心
業(yè)務(wù)咨詢
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352289
點(diǎn)擊這里給我發(fā)消息  81721488
有事點(diǎn)擊這里…  376585780
有事點(diǎn)擊這里…  872642803
有事點(diǎn)擊這里…  459248018
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  380791050
技術(shù)支持
有事點(diǎn)擊這里…  714236853
有事點(diǎn)擊這里…  719304487
有事點(diǎn)擊這里…  1208894568
有事點(diǎn)擊這里…  61352289
在線客服
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  983054746
有事點(diǎn)擊這里…  893984210
當(dāng)前位置:首頁 >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

MySQL數(shù)據(jù)庫生產(chǎn)環(huán)境的維護(hù)工作

添加時(shí)間:2013-10-27 15:07:31  添加: 思海網(wǎng)絡(luò) 
 從過往MySQL數(shù)據(jù)庫生產(chǎn)環(huán)境的維護(hù)工作中,總結(jié)的一些小經(jīng)驗(yàn)和知識(shí),未必有多深?yuàn)W,但是對(duì)我們消除隱患,確保MySQL數(shù)據(jù)庫生產(chǎn)環(huán)境四個(gè)9的作用非常有效之一的手段,運(yùn)維人員要非常注意細(xì)節(jié),盡量減低故障發(fā)生的概率。

  (一) DML語句書寫建議

  (1). DML語句不允許出現(xiàn)@number方式替代字段名稱

  不合理的寫法:

  UPDATE table_name SET @1=NOW() WHERE @2=1;

  正確的寫法:

  UPDATE table_name SET column_name1=NOW() WHERE column_name2=1;

  (2). UPDATE OR DELETE 禁用LIMIT子句

  不合理的寫法:

  UPDATE table_name SET column_name1=NOW() WHERE column_name2=1 LIMIT 1;

  正確的寫法:

  UPDATE table_name SET column_name1=NOW() WHERE column_name2=1;

  (3). INSERT語句需要寫清楚值和字段對(duì)應(yīng)關(guān)系

  不合理的寫法:

  INSERT INTO table_name VALUES(NOW(),DATE_ADD(NOW(),INTERVAL +1 DAY));

  正確的寫法:

  INSERT INTO table_name(gmt_create,gmt_modify) VALUES(NOW(),DATE_ADD(NOW(),INTERVAL +1 DAY));

  (4). DML語句少用不確定性函數(shù)

  常見被大家使用的不確定性函數(shù):UUID()、RAND()、SYSDATE()等函數(shù),若無特殊用處之外,請(qǐng)以確定性函數(shù)替代之。

  推薦閱讀的技術(shù)文章:曾用于內(nèi)部培訓(xùn)的PPT內(nèi)容:MySQL開發(fā)規(guī)范與實(shí)用技術(shù)交流

  (二) 大數(shù)據(jù)量的DELETE OR UPDATE

  可能出于某些原因和運(yùn)營(yíng)目的,需要對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行大量的清理或更改某字段的值,分別舉 二個(gè)示例:

  ① 網(wǎng)絡(luò)專項(xiàng)整治的時(shí)期,需要?jiǎng)h除大量含某些關(guān)鍵詞的內(nèi)容;

  ② 給符合某一條件(例如:等級(jí),在線時(shí)長(zhǎng))的游戲玩家,贈(zèng)送100~1000不等數(shù)量的游戲幣;

  給出的2個(gè)數(shù)據(jù)修改需求示例,若是直接根據(jù)相關(guān)要求去做,一個(gè)是需要用到模糊查詢,另一個(gè)數(shù)據(jù)更新條件也沒有合理索引可用,為此可能造成表對(duì)象表級(jí)鎖被長(zhǎng)時(shí)間鎖住,而且阻塞其他更改類型數(shù)據(jù)操作服務(wù),所以我們不得不采用更合理的辦法,建議如下步驟實(shí)施:

  ① 設(shè)計(jì)并創(chuàng)建一張表tmp_pk_data ,用于記錄將要被修改記錄的主鍵,及需要的相關(guān)信息;

  ② 優(yōu)先考慮在備庫上跑一條SQL命令或存儲(chǔ)過程的方式,把主鍵及相關(guān)數(shù)據(jù)寫到表tmp_pk_data中;

  ③ 編寫一個(gè)存儲(chǔ)過程,使用游標(biāo)循環(huán)控制獲得tmp_pd_data的信息,根據(jù)主鍵更新或刪除目標(biāo)表的數(shù)據(jù),且建議此操作在備庫上完成(注釋:必須是雙主復(fù)制模式,才可在備庫上執(zhí)行);

  (三) 定期規(guī)律性清理數(shù)據(jù)的DELETE

  定期規(guī)律性數(shù)據(jù)的清理,優(yōu)先對(duì)目標(biāo)表的數(shù)據(jù)操縱方式進(jìn)行分類:

  ① 若是日志類型的數(shù)據(jù),則完全可以改為借助分區(qū)表的方式,比如按日期刪除數(shù)據(jù)的條件,則可以用日期作為數(shù)據(jù)分區(qū)條件,然后增刪分區(qū)的方式實(shí)現(xiàn)數(shù)據(jù)的清理工作;

  ② 若是數(shù)據(jù)的UPDATE/DELETE/SELECT操縱條件,與定期清理數(shù)據(jù)的規(guī)則一致或被其包含,則可以考慮使用分區(qū)表,然后借助刪除分區(qū)方式達(dá)到數(shù)據(jù)清理的目標(biāo);

  ③ 若不能使用分區(qū)表解決的,則可以考慮參考上章節(jié)介紹的“大數(shù)據(jù)量的DELETE OR UPDATE”內(nèi)容;

  (四) M-M架構(gòu)的大數(shù)據(jù)量DML技巧

  定期規(guī)律性數(shù)據(jù)的清理,優(yōu)先對(duì)目標(biāo)表的數(shù)據(jù)操縱方式進(jìn)行分類:

  ① 若是日志類型的數(shù)據(jù),則完全可以改為借助分區(qū)表的方式,比如按日期刪除數(shù)據(jù)的條件,則可以用日期作為數(shù)據(jù)分區(qū)條件,然后增刪分區(qū)的方式實(shí)現(xiàn)數(shù)據(jù)的清理工作;

  ② 若是數(shù)據(jù)的UPDATE/DELETE/SELECT操縱條件,與定期清理數(shù)據(jù)的規(guī)則一致或被其包含,則可以考慮使用分區(qū)表,然后借助刪除分區(qū)方式達(dá)到數(shù)據(jù)清理的目標(biāo);

  ③ 若不能使用分區(qū)表解決的,則可以考慮參考上章節(jié)介紹的“大數(shù)據(jù)量的DELETE OR UPDATE”內(nèi)容;

關(guān)鍵字:MySQL、數(shù)據(jù)庫

分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡(luò)有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國(guó)增值電信業(yè)務(wù)經(jīng)營(yíng)許可證: 粵B1.B2-20030321 備案號(hào):粵B2-20030321-1
網(wǎng)站公安備案編號(hào):44060602000007 交互式欄目專項(xiàng)備案編號(hào):200303DD003  
察察 工商 網(wǎng)安 舉報(bào)有獎(jiǎng)  警警  手機(jī)打開網(wǎng)站