程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 分享一下Mysql罕見的幾個毛病成績及處理辦法

分享一下Mysql罕見的幾個毛病成績及處理辦法

編輯:MySQL綜合教程

分享一下Mysql罕見的幾個毛病成績及處理辦法。本站提示廣大學習愛好者:(分享一下Mysql罕見的幾個毛病成績及處理辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是分享一下Mysql罕見的幾個毛病成績及處理辦法正文


1.成績: mysql DNS反解:skip-name-resolve
 
毛病日記有相似正告:

1.120119 16:26:04 [Warning] IP address '192.168.1.10' could not be resolved: Name or service not known
2.120119 16:26:04 [Warning] IP address '192.168.1.14' could not be resolved: Name or service not known
3.120119 16:26:04 [Warning] IP address '192.168.1.17' could not be resolved: Name or service not known

經由過程show processlist發明年夜量相似以下的銜接:

1.|592|unauthenticated user|192.168.1.10:35320|NULL|Connect| |login|NULL|
2.|593|unauthenticated user|192.168.1.14:35321|NULL|Connect| |login|NULL|
3.|594|unauthenticated user|192.168.1.17:35322|NULL|Connect| |login|NULL|

 
skip-name-resolve 參數的感化:不再停止反解析(ip不反解成域名),如許可以加速數據庫的反響時光。
 
修正設置裝備擺設文件添加並須要重啟:

[mysqld]
skip-name-resolve
 
2.成績毛病日記:Error: Can't create a new thread (errno 12)

數據庫辦事器成績,數據庫操作沒法創立新線程。普通是有以下3個方面的緣由:
1)、MySQL 線程開得太多。
2)、辦事器體系內存溢出。
3)、情況軟件破壞或體系破壞。
 
【成績處理】

1.1)進入 phpmyadmin 的 mysql 數據庫中的 user 表,對數據庫的用戶停止編纂,修正 max_connections 的值。恰當的改小一點。
2.2)接洽辦事器治理員檢討辦事器的內存和體系能否正常,假如辦事器內存重要,請檢討一下哪些過程消費了辦事器的內存,同時斟酌能否增長辦事器的內存來進步全部體系的負載才能。
3.3)mysql版本更改成穩固版本
4.4)優化網站法式的sql等等
 
3.  操作報錯:ERROR 1010 (HY000): Error dropping database

1.mysql> drop database xjtrace;
2.ERROR 1010 (HY000): Error dropping database (can't rmdir './xjtrace/

在做數據庫刪除時湧現這類提醒,其緣由是在database上面含有本身放出來的文件,比方*.txt文件或*.sql文件等,只需出來把這個文件刪了在履行。

1.mysql>drop database xjtrace;
2.Query OK, 0 rows affected (0.00 sec)

武斷刪除便可!!
 
4.導出數據很快,導入到新庫時卻很慢:
 
MySQL導出的SQL語句在導入時有能夠會異常異常慢,閱歷過導入僅400萬筆記錄,竟用了近2個小時。在導出時公道應用幾個參數,可以年夜年夜加速導入的速度。
 
-e 應用包含幾個VALUES列表的多行INSERT語法;
--max_allowed_packet=XXX 客戶端/辦事器之間通訊的緩存區的最年夜年夜小;
--net_buffer_length=XXX TCP/IP和套接字通訊緩沖區年夜小,創立長度達net_buffer_length的行
留意:max_allowed_packet和net_buffer_length不克不及比目的數據庫的設置裝備擺設數值年夜,不然能夠失足。
 
起首肯定目的庫的參數值


mysql> show variables like 'max_allowed_packet';
+--------------------+---------+
| Variable_name | Value |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+
1 row in set (0.00 sec)

mysql> show variables like 'net_buffer_length';

+-------------------+-------+
| Variable_name | Value |
+-------------------+-------+
| net_buffer_length | 16384 |
+-------------------+-------+
1 row in set (0.00 sec)

依據參數值書寫mysqldump敕令,如:

mysql>mysqldump -uroot -p   數據庫名 -e --max_allowed_packet=1048576 -net_buffer_length=16384 > SQL文件
 
例如:

1.mysql> mysqldump -uroot -p xjtrace -e --max_allowed_packet=1048576 --net_buffer_length=16384 >xjtrace_data_`date +%F`.sql
 
之前2小時能力導入的sql如今幾十秒便可以完成了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved