一、mysql數(shù)據(jù)庫發(fā)現(xiàn)連接數(shù)滿了,應(yīng)該怎么弄
原因
出現(xiàn)這種錯誤明顯就mysql_connect之后忘記 mysql_close;當(dāng)大量的connect之后,就會出現(xiàn)Too many connections的錯誤,mysql默認的連接為100個,而什么情況下會出現(xiàn)這種錯誤呢?正常mysql_connect之后調(diào)用 mysql_close()關(guān)閉連接。
但在連接錯誤時,會者mysql_real_query()出現(xiàn)錯誤退出時,可能忘記mysql_close();
所以在程序return 之前一定要判斷是否close(),最穩(wěn)妥的方法就是在寫任何函數(shù)時都只有一個出口!
解決方法
想盡一切辦法不重啟
這種情況一般是進不去數(shù)據(jù)庫了,修改配置文件得重啟,對于線上的數(shù)據(jù)庫風(fēng)險太大了,進入數(shù)據(jù)庫用sql修改,現(xiàn)在是進不去了
方法1:
使用gdb工具 不用進入數(shù)據(jù)庫,不用重啟數(shù)據(jù)庫 方法如下:
[root@xxx bin]# gdb -p $(cat /data/mydata/xxx.pid) -ex “set max_connections=500” -batch
查看mysql pid位置的方法
在配置文件 my.cnf里查找
用 ps -ef | grep mysql 查找
mysql> show variables like ‘%pid%’;
+—————+———————-+
| Variable_name | Value |
+—————+———————-+
| pid_file | /data/mydata/xxx.pid |
+—————+———————-+
修改完畢后 ,嘗試重新進入數(shù)據(jù)庫,并查看鏈接數(shù)
這種方法設(shè)置后,只是暫時的,數(shù)據(jù)庫重啟后,會變?yōu)樵瓉淼臄?shù)值,要想永久,設(shè)置完后修改配置文件my.cnf
方法2
前提是還可以進入數(shù)據(jù)庫
進入數(shù)據(jù)庫
設(shè)置新的最大連接數(shù)為200:mysql> set GLOBAL max_connections=200
顯示當(dāng)前運行的Query:mysql> show processlist
顯示當(dāng)前狀態(tài):mysql> show status
退出客戶端:mysql> exit
這種方法設(shè)置后,只是暫時的,數(shù)據(jù)庫重啟后,會變?yōu)樵瓉淼臄?shù)值,要想永久,設(shè)置完后修改配置文件my.cnf
方法3:
需要重啟數(shù)據(jù)庫
修改 my.conf
max_connection = 1000;
延伸閱讀:
二、BI是什么
BI即商業(yè)智能,泛指用于業(yè)務(wù)分析的技術(shù)和工具,通過獲取、處理原始數(shù)據(jù),將其轉(zhuǎn)化為有價值的信息指導(dǎo)商業(yè)行動。Gartner把BI定義為一個概括性的術(shù)語(umbrella term),其中包括應(yīng)用程序、基礎(chǔ)設(shè)施和工具,通過獲取數(shù)據(jù)、分析信息以改進并優(yōu)化決策和績效,形成一套優(yōu)異的商業(yè)實踐。