最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL常見故障與優(yōu)化方式

 更新時(shí)間:2024年04月03日 09:33:27   作者:敢敢936  
這篇文章主要介紹了MySQL常見故障與優(yōu)化方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教<BR>

一、mysql單實(shí)例常見故障

1.故障一

ERROR 2002 (HY000): Can't connect to local MySQL server through socket/data/mysql/mysql.sock'(2)

問(wèn)題分析:以上這種情況一般都是數(shù)據(jù)庫(kù)未啟動(dòng)或者數(shù)據(jù)庫(kù)端口被防火墻攔截導(dǎo)致。

解決方法:?jiǎn)?dòng)數(shù)據(jù)庫(kù)或者防火墻開放數(shù)據(jù)庫(kù)監(jiān)聽端口。

2.故障二

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

問(wèn)題分析:密碼不正確或者沒有權(quán)限訪問(wèn)。

解決方法:

  • 修改my.cnf主配置文件,在[mysqld]下添加 skip-grant-tables
  • update更新user表authentication_string字段
  • 重新授權(quán)

3.故障三

在使用遠(yuǎn)程連接數(shù)據(jù)庫(kù)時(shí)偶爾會(huì)發(fā)生遠(yuǎn)程連接數(shù)據(jù)庫(kù)很慢的問(wèn)題。

問(wèn)題分析:

  • 如果 MySQL 主機(jī)查詢 DNS 很慢或是有很多客戶端主機(jī)時(shí)會(huì)導(dǎo)致連接很慢.
  • 由于開發(fā)機(jī)器是不能夠連接外網(wǎng)的,在進(jìn)行 MySQL 連接時(shí),DNS 解析是不可能完成的, 從而也就明白了為什么連接那么慢了。

解決方法:

  • 修改 my.cnf 主配置文件,在[mysqld]下添加 skip-name-resolve,重啟數(shù)據(jù)庫(kù)可以解決。
  • 注意在以后授權(quán)里面不能再使用主機(jī)名授權(quán)。

4.故障四

Can't open file: 'xxx_forums.MYI'. (errno: 145)

問(wèn)題分析:

服務(wù)器非正常關(guān)機(jī),數(shù)據(jù)庫(kù)所在空間已滿,或一些其它未知的原因?qū)?shù)據(jù)庫(kù)表造成了損壞因拷貝數(shù)據(jù)庫(kù)導(dǎo)致文件的屬組發(fā)生變化

解決方法:

修復(fù)數(shù)據(jù)表 (myisamchk、phpMyAdmin)修改文件的屬組

5.故障五

ERROR 1129 (HY000): Host 'xxx.xxx.xxx.xxx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'

問(wèn)題分析:

超出最大連接錯(cuò)誤數(shù)量限制

解決方法:

清除緩存(flush-hosts關(guān)鍵字)修改mysql配置文件 (max_connect_errors=1000)

6.故障六

Too many connections

問(wèn)題分析:

連接數(shù)超出MySQL的最大連接限制

解決方法:

修改MySQL配置文件 (max_connections=2000)臨時(shí)修改參數(shù):set GLOBAL max_connections=2000;

7.故障七

Warning:World-writable config file '/etc/my.cnf' is ignoredERROR! MySQL is running but PlD file could not be found

問(wèn)題分析:

MySQL的配置文件/etc/my.cnf 權(quán)限問(wèn)題

解決方法:

chmod 644 /etc/my.cnf

8.故障八

InnoDB:Error: page 14178 log sequence number 29455369832InnoDB: is in the future! Current system log sequence number 29455369832

問(wèn)題分析:

innodb數(shù)據(jù)文件損壞

解決方法:

修改 my.cnf 配置文件 (innodb_force_recovery=4)啟動(dòng)數(shù)據(jù)庫(kù)后備份數(shù)據(jù)文件利用備份文件恢復(fù)數(shù)據(jù)

二、主從環(huán)境常見故障

1.故障一

從庫(kù)的Slave_lO_Running為NO

The slave I/O thread stops because master and slave have equal MySQL serverids; these ids must be different for replication to work (or the --replicate-same-server-idoption must be used on slave but this does not always make sense;please check the manual before using it).

問(wèn)題分析:

主庫(kù)和從庫(kù)的server-id值一樣

解決方法:

修改從庫(kù)的 server-id 的值,修改為和主庫(kù)不一樣重新啟動(dòng)數(shù)據(jù)庫(kù)并再次同步

2. 故障二

從庫(kù)的Slave_lO_Running為NO

問(wèn)題分析:

主鍵沖突或者主庫(kù)刪除或更新數(shù)據(jù),從庫(kù)內(nèi)找不到記錄,數(shù)據(jù)被修改導(dǎo)致

解決方法:

方法一 

mysql> stop slave;

mysqI> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

mysql> start slave;

方法二

set global read_only=true;

3. 故障三

Error initializing relay log position: I/O error reading the header from the binary log

問(wèn)題分析:

從庫(kù)的中繼日志 relay-bin 損壞

解決方法:

手工修復(fù),重新找到同步的 binlog 和 pos 點(diǎn),然后重新同步即可

mysqI> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.xxx',MASTER_LOG_POS=xxx;

三、mysql優(yōu)化

可以從不同角度進(jìn)行優(yōu)化:

  • 硬件優(yōu)化
  • MySQL配置文件優(yōu)化
  • SQL優(yōu)化
  • MySQL架構(gòu)優(yōu)化

1.硬件優(yōu)化

cpu:64位,高主頻,高緩存,高并行處理能力

內(nèi)存:大內(nèi)存,主頻高,盡量不要使用SWAP

硬盤:15000轉(zhuǎn),RAID5 ,RAID10   ,SSD

網(wǎng)絡(luò):標(biāo)配的千兆網(wǎng)卡,10G網(wǎng)卡,bond0,MySQL服務(wù)器盡可能和使用它的web服務(wù)器在同一局域網(wǎng)內(nèi),盡量避免諸如防火墻策略等不必要的開銷

2.查詢優(yōu)化

1.優(yōu)化建表結(jié)構(gòu)

2.建立合適的索引

3.查詢時(shí)盡量減少邏輯運(yùn)算

4.減少不當(dāng)?shù)牟樵冋Z(yǔ)句,不要查詢應(yīng)用中不需要的列

5.減少事務(wù)包大小

6.將多個(gè)小的查詢適當(dāng)合并成一個(gè)大的查詢,減少每次建立/關(guān)閉查詢的開銷

7.將某些過(guò)于復(fù)雜的查詢拆解成多個(gè)小查詢,和上一條正好相反

8.建立和優(yōu)化存儲(chǔ)過(guò)程來(lái)代替大量的外部程序交互

3.操作系統(tǒng)的優(yōu)化

網(wǎng)卡bond技術(shù)

設(shè)置TCP連接數(shù)量限制,優(yōu)化系統(tǒng)打開文件的最大限制

使用64位操作系統(tǒng),64位系統(tǒng)可以分給單個(gè)進(jìn)程更多內(nèi)存,計(jì)算更快

禁止不必要啟動(dòng)的服務(wù)

4.my.cnf內(nèi)參數(shù)的優(yōu)化

4.1連接參數(shù):

  • max_connections:限制并發(fā)連接數(shù),根據(jù)應(yīng)用需求適當(dāng)調(diào)整
  • thread_cache_size:控制線程緩存的大小,以減少創(chuàng)建和銷毀線程的開銷

4.2緩存池設(shè)置:

  • innodb_buffer_pool_size:設(shè)置lnnoDB緩沖池的大小,通常建議設(shè)置為物理內(nèi)存的50%-70%
  • key_buffer_size:對(duì)于MyISAM表,這個(gè)參數(shù)表示鍵緩存的大小

4.3日志設(shè)置:

  • log_error:指定錯(cuò)誤日志文件的路徑
  • slow_query_log:?jiǎn)?dòng)慢查詢?nèi)罩?,幫助識(shí)別需要優(yōu)化的查詢
  • general_log:啟動(dòng)通用查詢?nèi)罩?,用于調(diào)試目的

4.4lnnoDB參數(shù)設(shè)置:

  • lnnodb_log_file_size:設(shè)置lnnoDB事務(wù)日志文件的大小
  • innodb_flush_log_at_trx_commit:控制事務(wù)提交時(shí)日志刷新的行為
  • innodb_file_per_table:對(duì)于innoDB表,啟動(dòng)獨(dú)立表空間

4.5查詢緩存和臨時(shí)表位置:

  • query_cache_type和query_cache_size:如果使用查詢緩存,可以設(shè)置緩存的類型和大小
  • tmp_table_size和max_heap_table_size:控制臨時(shí)表的內(nèi)存和磁盤使用

4.6其他參數(shù):

  • table_open_cache:設(shè)置打開表的緩存數(shù)量,以提高性能
  • innodb_io_capacity:設(shè)置lnnoDB的I/O容量,適應(yīng)存儲(chǔ)設(shè)備的性能
  • skip-name-reslove:禁止使用使用DNS查找,只能使用ip地址

4.7安全參數(shù):

  • secure_fiel_priv:限制導(dǎo)入/導(dǎo)出數(shù)據(jù)的目錄
  • skip_networking:禁止網(wǎng)絡(luò)連接,只允許本地連接

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Mysql中explain命令返回參數(shù)的具體使用

    Mysql中explain命令返回參數(shù)的具體使用

    EXPLAIN返回的關(guān)鍵列包括id、select_type、table、type、possible_keys、key、key_len、ref、rows和Extra等,本文就來(lái)介紹Mysql中explain命令返回參數(shù),感興趣的可以了解一下
    2024-09-09
  • mysql主從同步復(fù)制錯(cuò)誤解決一例

    mysql主從同步復(fù)制錯(cuò)誤解決一例

    Fatal error: The slave I/O thread stops because master and slave have equal MySQL server ids
    2011-05-05
  • MySQL導(dǎo)入.CSV數(shù)據(jù)中文亂碼的解決方式

    MySQL導(dǎo)入.CSV數(shù)據(jù)中文亂碼的解決方式

    當(dāng)將xls或xlsx文件轉(zhuǎn)換為CSV并導(dǎo)入數(shù)據(jù)庫(kù)時(shí),可能出現(xiàn)亂碼,原因是編碼格式不是UTF-8,解決方法是使用Notepad或記事本打開CSV文件,所以本文給大家介紹了MySQL導(dǎo)入.CSV數(shù)據(jù)中文亂碼的解決方式,需要的朋友可以參考下
    2024-08-08
  • MySQL時(shí)間類型與Java日期時(shí)間類對(duì)應(yīng)關(guān)系示例詳解

    MySQL時(shí)間類型與Java日期時(shí)間類對(duì)應(yīng)關(guān)系示例詳解

    在開發(fā)中數(shù)據(jù)庫(kù)和編程語(yǔ)言通常需要處理日期和時(shí)間數(shù)據(jù),MySQL數(shù)據(jù)庫(kù)和Java編程語(yǔ)言都提供了各種時(shí)間類型來(lái)處理日期和時(shí)間數(shù)據(jù),這篇文章主要介紹了MySQL時(shí)間類型與Java日期時(shí)間類對(duì)應(yīng)關(guān)系的相關(guān)資料,需要的朋友可以參考下
    2025-08-08
  • mysql索引(覆蓋索引,聯(lián)合索引,索引下推)

    mysql索引(覆蓋索引,聯(lián)合索引,索引下推)

    這篇文章主要介紹了mysql索引(覆蓋索引,聯(lián)合索引,索引下推),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Docker安裝mysql配置大小寫不敏感掛載數(shù)據(jù)卷存儲(chǔ)操作步驟

    Docker安裝mysql配置大小寫不敏感掛載數(shù)據(jù)卷存儲(chǔ)操作步驟

    這篇文章主要介紹了Docker安裝mysql配置大小寫不敏感掛載數(shù)據(jù)卷存儲(chǔ)操作步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • mysql 求解求2個(gè)或以上字段為NULL的記錄

    mysql 求解求2個(gè)或以上字段為NULL的記錄

    這篇文章主要介紹了mysql 求解求2個(gè)或以上字段為NULL的記錄,需要的朋友可以參考下
    2017-05-05
  • MySQL表空間結(jié)構(gòu)詳解表空間到段頁(yè)操作

    MySQL表空間結(jié)構(gòu)詳解表空間到段頁(yè)操作

    在MySQL架構(gòu)和存儲(chǔ)引擎專題中介紹了使用不同存儲(chǔ)引擎創(chuàng)建表時(shí)生成的表空間數(shù)據(jù)文件,在本章節(jié)主要介紹使用InnoDB存儲(chǔ)引擎創(chuàng)建表時(shí)生成的表空間數(shù)據(jù)文件,對(duì)mysql表空間結(jié)構(gòu)及表空間到段頁(yè)相關(guān)知識(shí)感興趣的朋友一起看看吧
    2025-05-05
  • MySQL 中查詢 VARCHAR 類型 JSON 數(shù)據(jù)的問(wèn)題記錄

    MySQL 中查詢 VARCHAR 類型 JSON 數(shù)據(jù)的問(wèn)題記錄

    在數(shù)據(jù)庫(kù)設(shè)計(jì)中,有時(shí)我們會(huì)將 JSON 數(shù)據(jù)存儲(chǔ)在 VARCHAR 或 TEXT 類型字段中,本文將詳細(xì)介紹如何在 MySQL 中有效查詢存儲(chǔ)為 VARCHAR 類型的 JSON 數(shù)據(jù),感興趣的朋友一起看看吧
    2025-04-04
  • MySQL安全快速的刪除一張大表的正確方式

    MySQL安全快速的刪除一張大表的正確方式

    生產(chǎn)環(huán)境中直接 DROP TABLE 一張千萬(wàn)級(jí)大表無(wú)異于自 殺,本文深度解析 InnoDB 刪表的底層原理,提供一套無(wú)感刪表的標(biāo)準(zhǔn)操作流程(SOP),助你在不影響業(yè)務(wù)的前提下,安全、快速地清理海量數(shù)據(jù),需要的朋友可以參考下
    2026-03-03

最新評(píng)論

奈曼旗| 柳林县| 栾川县| 普格县| 广州市| 辽宁省| 甘谷县| 桦川县| 武义县| 鹤峰县| 沐川县| 龙泉市| 东丰县| 莱阳市| 太湖县| 咸丰县| 德清县| 万全县| 莱芜市| 峨山| 山西省| 乌拉特前旗| 宜兰县| 石家庄市| 马边| 比如县| 桐乡市| 两当县| 武宣县| 鄂尔多斯市| 塔城市| 定安县| 镇沅| 嘉禾县| 专栏| 桃源县| 南和县| 阿勒泰市| 新安县| 萨嘎县| 九江县|