導航:首頁 > 編程語言 > php獲取mysql錯誤

php獲取mysql錯誤

發布時間:2023-10-16 10:30:59

php連接mysql資料庫,報錯Function mysql_connect() is deprecated

info.php在CentOS
64位虛擬機運行的時候,其中MySQL版本那一欄是空白信息。我查看了info.php源碼,開始以為是MySQL資料庫的用戶名和密碼填寫錯了,仔細檢查沒有錯誤之後,便查看了Apache的error_log,得到如下消息:
mysql_connect():
No
such
file
or
directory
在網上查了一下,說是本地socket設置與默認的不一樣,導致php無法找到mysql的socket文件。根據網上提供的方法,需要做如下操作。
首先,在MySQL中用status查看資料庫狀態,如下所示:
mysql
Ver
14.14
Distrib
5.1.69,
for
redhat-Linux-gnu
(x86_64)
using
readline
5.1
Connection
id:
10
Current
database:
Current
user:
root@localhost
SSL:
Not
in
use
Current
pager:
stdout
Using
outfile:
''
Using
delimiter:
;
Server
version:
5.1.69
Source
distribution
Protocol
version:
10
Connection:
Localhost
via
UNIX
socket
Server
characterset:
latin1
Db
characterset:
latin1
Client
characterset:
latin1
Conn.
characterset:
latin1
UNIX
socket:
/var/lib/mysql/mysql.sock
Uptime:
20
hours
55
min
30
sec
其中,標紅的部分是我們需要的。然後打開php.ini文件,需要將mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket的值設置為標紅後面的那個目錄。重啟apache伺服器,後續info.php工作正常,MySQL的版本信息能夠正常顯示了。

Ⅱ php 連接mysql資料庫錯誤,求解

碼沒錯,只是沒有載入php_mysql.dll這個extension 修改php.ini後要重啟apache才行,不然你修改的效果不會顯示出來的

Ⅲ 近期使用phpmysql出現error:Lost connection to MySQL server ring query錯誤,急求!!!

一般這種情況可能的原因:

1.資料庫太大,導致伺服器超時了並且關閉了連接。這種情況你可以通過修改mysql的超時配置來改善,如interactive_timeout、wait_timeout、max_allowed_packet。

2.也有可能是你訪問的資料庫表有問題,這種情況一般就是只當你訪問某個表才會出現這個問題,那麼你可能需要修復下該表。

以下是mysql用戶手冊中的相關資料:

18.2 使用MySQL時的一些常見錯誤

18.2.1 MySQL server has gone away錯誤

本小節也涉及有關Lost connection to server ring query的錯誤。

對MySQL server has gone away錯誤最常見的原因是伺服器超時了並且關閉了連接。預設地,如果沒有事情發生,伺服器在 8個小時後關閉連接。你可在啟動mysqld時通過設置wait_timeout變數改變時間限制。

你可以通過執行mysqladmin version並且檢驗正常運行的時間來檢查MySQL還沒死掉。

如果你有一個腳本,你只須再發出查詢讓客護進行一次自動的重新連接。

在這種請下,你通常能獲得下列錯誤代碼(你得到的是OS相關的):

CR_SERVER_GONE_ERROR 客戶不能發送一個問題給伺服器。
CR_SERVER_LOST 當寫伺服器時,客戶沒有出錯,但是它沒有得到對問題的一個完整的答案(或任何答案)。

如果你向伺服器發送不正確的或太大的查詢,你也可能得到這些錯誤。如果mysqld得到一個太大或不正常的包,它認為客戶出錯了並關閉連接。如果你需要較大的查詢(例如,如果你正在處理較大的BLOB列),你可以使用-O max_allowed_packet=#選項(預設1M)啟動mysqld以增加查詢限制。多餘的內存按需分配,這樣mysqld只有在你發出較大差詢時或mysqld必須返回較大的結果行時,才使用更多的內存!

Ⅳ 使用php鏈接mysql資料庫的時候報錯了,錯誤提示:Warning: mysqli::__construct(): (HY000/2002):

$result = mysqli_query($connect, $query) or die ('Error querying database.');這句話後面加上. mysqli_error($connect ))即改為:
$result = mysqli_query($connect, $query) or die ('Error querying database.'. mysqli_error($connect )));
查看一下返回什麼錯誤描述,然後根據錯誤描述進行修改,當然也可以查看mysql的錯誤日誌啦
ps:光從代碼上沒看出錯誤,有可能資料庫里的欄位名你寫錯了

閱讀全文

與php獲取mysql錯誤相關的資料

熱點內容
怎麼查伺服器假死原因日誌在哪看 瀏覽:277
掃描pdf文件 瀏覽:926
解壓密碼百度雲在線解壓 瀏覽:767
傳播學演算法推薦 瀏覽:749
我的世界網路游戲如何查找伺服器 瀏覽:257
安卓和蘋果通訊錄怎麼互傳 瀏覽:203
怎麼打開隱私與應用加密的菜單 瀏覽:416
我的世界伺服器小游戲的地址大全 瀏覽:578
在網路安全中加密安全機制提供了數據的 瀏覽:249
南京前端程序員私活怎麼收費 瀏覽:981
拓撲pdf 瀏覽:440
如何在工行app查我的訂單 瀏覽:214
車壓縮機改電動 瀏覽:83
如何尋找音樂app 瀏覽:831
一加加密的照片 瀏覽:200
阿里雲虛擬主機php 瀏覽:639
不卡點的解壓視頻 瀏覽:391
hex文件下載單片機 瀏覽:873
實現編譯器的自展技術 瀏覽:655
app開發者怎麼突破 瀏覽:418