共計 1248 個字符,預(yù)計需要花費 4 分鐘才能閱讀完成。
mysql 與 php 的錯誤以及解決方法,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
這兩天在配置 snort+base 環(huán)境,涉及到 apache, mysql 和 php 的安裝與配置。雖然網(wǎng)上都有很多這方面的資料,但由于所用服務(wù)器個性化配置不同,照搬別人的安裝步驟并不能成功。由于第一次同時構(gòu)設(shè)這幾個基礎(chǔ)軟件,還是遇到了不少問題,查找了不少資料。在解決問題的過程中,對開源系統(tǒng)服務(wù)又有了進一點認(rèn)識。
[@more@]
問題一:不小心竟然刪掉了 mysql 的 mysql.sock 文件, 默認(rèn)數(shù)據(jù)庫文件有損壞,導(dǎo)致運行 mysqld_safe 啟動數(shù)據(jù)庫時出現(xiàn)下面錯誤
Starting mysqld daemon with databases from /var/lib/mysql
STOPPING server from pid file /var/run/mysqld/mysqld.pid
070722 11:07:31mysqld ended
嘗試連接一下,mysql –uroot –p 連接時提示:
ERROR 2002 (HY000): Can t connect to local MySQL server through socket /var/lib/mysql/mysql.sock
解決辦法就是,用 mysql_install_db 重建數(shù)據(jù), 然后
/usr/libexec/mysqld –defaults-file=/etc/my.cnf –basedir=/usr –datadir=/var/lib/mysql –user=root –pid-file=/var/run/mysqld/mysqld.pid –skip-locking –socket=/var/lib/mysql/mysql.sock
問題二:訪問 php 頁面時,發(fā)現(xiàn)只有頭部顯示出來,后面的 php 代碼毫無反應(yīng),
也沒有輸出。
經(jīng)過一番查看 apache 的日志,發(fā)現(xiàn) php 有把 warning 和一些 error 信息寫進去,說明了 apache 是可以和 php 交互工作。那應(yīng)該是 php 配置的問題了,打開 php.ini 文件,把兩個變量修改成 error_reporting = E_ALL ~E_NOTICE, display_errors = On, 這一次可以打印很多信息了。
再修改 apache 的配置文件 httpd.conf,加上
php_flag display_errors on
php_value error_reporting 2039
service httpd restart 后,再訪問原來的 php 文件,嘩啦嘩啦好幾條錯誤跑了出來,這下心情輕松了,原來之前出錯了 php 不繼續(xù)往下解析了,出錯信息也隱藏了起來。
這兩個選項在高度代碼時很有用,但發(fā)布版本應(yīng)該將它關(guān)閉,不然會泄漏不少秘密的 ^_^
關(guān)于 mysql 與 php 的錯誤以及解決方法問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注丸趣 TV 行業(yè)資訊頻道了解更多相關(guān)知識。