php mysql 2002,PHP MYSQL无法连接(HY000 / 2002)

i was working on a website on a local server (WAMP) and php and database worked fine. but when i uploaded the site to the hosting server. and tried to login, the DB connection would not work. it gives me warnings when i use DB functions like mysqli::mysqli().

the whole error is as follows:

Warning: mysqli::mysqli() [mysqli.mysqli]: (HY000/2002): No connection could be made

because the target machine actively refused it.

in D:\Hosting\XXXXX\html\raw\database\connect.php on line 9

continues

Warning: mysqli::mysqli() [mysqli.mysqli]: [2002] No connection could be made because

the target machine actively (trying to connect via tcp://localhost:3306) in

D:\Hosting\XXXXX\html\raw\database\connect.php on line 9

Warning: mysqli::query() [mysqli.query]: Couldn't fetch mysqli in

D:\Hosting\XXXXX\html\raw\functions\users.php on line 10

The php code for connect.php is:

require_once 'Internal/Var.php';

//mysql_connect(D_SERVER, D_USER, D_PASSWORD);

//mysql_select_db(D_NAME);

function create_connection()

{

$conn = new mysqli(D_SERVER, D_USER, D_PASSWORD, D_NAME);

return $conn;

}

function close_connection(mysqli $con)

{

$con->close();

}

?>

解决方案

You need to specify the username and password for your MySQLi connection.

require_once 'Internal/Var.php';

// Remove the two procedural connection lines here

function create_connection()

{

// Make sure D_SERVER, D_USER, D_PASSWORD, D_NAME have the correct values

// These values are probably created in Internal/Var.php

$conn = new mysqli(D_SERVER, D_USER, D_PASSWORD, D_NAME);

return $conn;

}

function close_connection(mysqli $con)

{

$con->close();

}

引用:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 引用:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 引用:这边讲述了mysql提供的“mysql”、“mysqldump”、“mysqladmin”等命令提示“ERROR 2002 (HY000): Can't connect to local MySQL server through socket '***' (2)”的解决方法,如果需要解决“php”、“perl”、“python”等脚本语言提示此错误的问题。 根据引用内容,当执行mysql命令时出现"ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)"的错误信息,通常表示无法通过socket连接到本地的MySQL服务器。 解决这个问题可以尝试以下步骤: 1. 确保MySQL服务器正在运行。可以使用命令"service mysql status"来检查MySQL服务器的运行状态。 2. 检查MySQL服务器的配置文件。可以通过编辑/etc/mysql/my.cnf文件来查看配置信息,确保该文件中的socket路径与错误信息中显示的路径一致。 3. 检查/var/lib/mysql目录中是否存在mysql.sock文件。如果不存在,可以尝试执行以下命令来重新创建该文件: - sudo mkdir /var/lib/mysql - sudo touch /var/lib/mysql/mysql.sock - sudo chown -R mysql:mysql /var/lib/mysql - sudo service mysql restart 4. 如果以上步骤都没有解决问题,可以尝试重新安装MySQL服务器或者联系系统管理员或MySQL的技术支持了解更详细的解决方法。 请注意,以上步骤仅为常见解决方法之一,具体的解决方法可能因系统环境和配置而异。建议在操作前备份重要数据,并谨慎进行操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'](https://blog.csdn.net/weixin_41712059/article/details/103188286)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock...](https://blog.csdn.net/weixin_45777669/article/details/115671283)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值