今天访问一个网站,发现出现了下面这个内容,于是,就搜索一下解决办法。
Discuz! Database Error
(2002) notconnect
PHP Debug
No. | File | Line | Code |
1 | forum.php | 49 | discuz_application->init() |
2 | source/class/discuz/discuz_application.php | 65 | discuz_application->_init_db() |
3 | source/class/discuz/discuz_application.php | 373 | discuz_database::init(%s, Array) |
4 | source/class/discuz/discuz_database.php | 23 | db_driver_mysql->connect() |
5 | source/class/db/db_driver_mysql.php | 74 | db_driver_mysql->_dbconnect(%s, %s, %s, %s, %s, %s) |
6 | source/class/db/db_driver_mysql.php | 87 | db_driver_mysql->halt(%s, %d) |
7 | source/class/db/db_driver_mysql.php | 218 | break() |
www.metasploit.cn 已经将此出错信息详细记录, 由此给您带来的访问不便我们深感歉意. Need Help?
错误编号:2002
问题分析:
出现这个错误一般情况下是因为下面两个原因:
1、MySQL 服务器没有开启。
2、MySQL 服务器开启了,但不能找到 socket 文件。
解决办法:
1、虚拟主机用户,请联系空间商确认数据库是否正常启动,并跟空间商确认 MySQL 的 socket 文件启动地址,可以尝试在 论坛根目录下的配置文件 config.inc.php 中的 $dbhost 的值改为 $dbname = 'localhost:/tmp/mysql.socket‘,(这里假设 MySQL 的启动地址是 /tmp/mysql.socket,具体的启动地址依据空间商提供的启动地址而定)。
2、独立主机用户,请检查一下 MySQL 服务是否已经开启,没有开启,请启动 MySQL 服务;如果已经开启并且是 Linux 系统,请检查一下 MySQL 的 socket 路径,然后打开 config.inc.php 找到
$dbhost = 'localhost'; 在 localhost 后面加冒号‘:’和 MySQL 的 socket 路径。
比如 MySQL 服务器为 localhost
MySQL 的 socket 路径为 /tmp/MySQL.sock
那么就改成如下:
$dbhost = 'localhost:/temp/MySQL.sock';
转载于:https://blog.51cto.com/chaorenhuifei/1699987