mysql數(shù)據(jù)庫優(yōu)化五步走
1:磁盤尋道能力,以高速硬盤(7200轉(zhuǎn)/秒),理論上每秒尋道7200次.這是沒有辦法改變的,優(yōu)化的方法是----用多個硬盤,或者把數(shù)據(jù)分散存儲.
2:硬盤的讀寫速度,這個速度非常的快,這個更容易解決--可以從多個硬盤上并行讀寫.
3:cpu.cpu處理內(nèi)存中的數(shù)據(jù),當(dāng)有相對內(nèi)存較小的表時,這是最常見的限制因素.
4:內(nèi)存的限制.當(dāng)cpu需要超出適合cpu緩存的數(shù)據(jù)時,緩存的帶寬就成了內(nèi)存的一個瓶頸---不過現(xiàn)在內(nèi)存大的驚人,一般不會出現(xiàn)這個問題.
第二步: (本人使用的是學(xué)校網(wǎng)站的linux平臺(Linux ADVX.Mandrakesoft.com 2.4.3-19mdk ))
1:調(diào)節(jié)服務(wù)器參數(shù)
用shell>mysqld-help這個命令聲廠一張所有mysql選項和可配置變量的表.輸出以下信息:
possible variables for option--set-variable(-o) are:
back_log current value:5 //要求mysql能有的連接數(shù)量.back_log指出在mysql暫停接受連接的時間內(nèi)有多少個連接請求可以被存在堆棧中
connect_timeout current value:5 //mysql服務(wù)器在用bad handshake(不好翻譯)應(yīng)答前等待一個連接的時間
delayed_insert_timeout current value:200 //一個insert delayed在終止前等待insert的時間
delayed_insert_limit current value:50 //insert delayed處理器將檢查是否有任何select語句未執(zhí)行,如果有,繼續(xù)前執(zhí)行這些語句
delayed_queue_size current value:1000 //為insert delayed分配多大的隊
flush_time current value:0 //如果被設(shè)置為非0,那么每個flush_time 時間,所有表都被關(guān)閉
interactive_timeout current value:28800 //服務(wù)器在關(guān)上它之前在洋交互連接上等待的時間
join_buffer_size current value:131072 //用與全部連接的緩沖區(qū)大小
key_buffer_size current value:1048540 //用語索引塊的緩沖區(qū)的大小,增加它可以更好的處理索引
lower_case_table_names current value:0 //
long_query_time current value:10 //如果一個查詢所用時間大于此時間,slow_queried計數(shù)將增加
max_allowed_packet current value:1048576 //一個包的大小
max_connections current value:300 //允許同時連接的數(shù)量
max_connect_errors current value:10 //如果有多于該數(shù)量的中斷連接,將阻止進(jìn)一步的連接,可以用flush hosts來解決
max_delayed_threads current value:15 //可以啟動的處理insert delayed的數(shù)量
max_heap_table_size current value:16777216 //
max_join_size current value:4294967295 //允許讀取的連接的數(shù)量
max_sort_length current value:1024 //在排序blob或者text時使用的字節(jié)數(shù)量
max_tmp_tables current value:32 //一個連接同時打開的臨時表的數(shù)量
max_write_lock_count current value:4294967295 //指定一個值(通常很小)來啟動mysqld,使得在一定數(shù)量的write鎖定之后出現(xiàn)read鎖定
net_buffer_length current value:16384 //通信緩沖區(qū)的大小--在查詢時被重置為該大小
query_buffer_size current value:0 //查詢時緩沖區(qū)大小
record_buffer current value:131072 //每個順序掃描的連接為其掃描的每張表分配的緩沖區(qū)的大小
sort_buffer current value:2097116 //每個進(jìn)行排序的連接分配的緩沖區(qū)的大小
table_cache current value:64 //為所有連接打開的表的數(shù)量
thread_concurrency current value:10 //
tmp_table_size current value:1048576 //臨時表的大小
thread_stack current value:131072 //每個線程的大小
wait_timeout current value:28800 //服務(wù)器在關(guān)閉它3之前的一個連接上等待的時間
根據(jù)自己的需要配置以上信息會對你幫助.
關(guān)鍵字:mysql、數(shù)據(jù)庫、服務(wù)器
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動項
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實現(xiàn)無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯
- 解決Centos7雙系統(tǒng)后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解