无法连接:无法通过套接字“/var/run/mysqld/mysqld.sock”连接到本地 MySQL 服务器 (2)

无法连接:无法通过套接字“/var/run/mysqld/mysqld.sock”连接到本地 MySQL 服务器 (2)

我是 Ubuntu 新手,正在使用Ubuntu 服务器 14.40 LTS。我尝试连接我的 MySQL 数据库以在 PHP 文件上显示数据库数据,但无法连接。此外,Could Not Connect: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)当我打开该 PHP 文件时出现错误,当我打开 PhpMyAdmin 时出现#2002 Cannot log in to the MySQL server错误Connection for controluser as defined in your configuration failed.

刚安装完 Ubuntu 后,我在服务器外打开我的 PHP 页面,然后无法连接数据库,甚至没有任何错误。然后在 Google 上搜索,我改为bind-address = 127.0.0.1允许# bind-address = 127.0.0.1连接,
/etc/mysql/my.cnf但之后我得到了上述两个错误。

我的连接文件如下...

<?php
$host = "localhost";
$username = "my_username";
$password = "my_password";
$dbname = "my_database";
$connection = mysql_connect($host,$username,$password);
if (!$connection) {
  die('Could Not Connect: ' . mysql_error());
}
mysql_select_db($dbname) or die(mysql_error());
mysql_query("SET NAMES utf8");
?>

此外,我port 80的 ISP 被阻止,我正在使用port 7550Apache。我还有一个动态 IP。请考虑这些限制并告诉我如何连接到 mysql 服务器?请使用终端回答。

答案1

我自己也尝试过,在发布问题后,我按照下面的步骤成功了。这对我来说是有效的。你也可以试试。

  1. 在 Ubuntu 中打开终端。
  2. 类型mysql -u root -p
  3. 输入您的 SQL 密码
  4. 类型> grant all privileges on DATABASE_NAME.* to USERNAME@IPADDRESS identified by 'PASSWORD';
  5. 或者
  6. 类型> grant all privileges on DATABASE_NAME.* to USERNAME@localhost identified by 'PASSWORD';
  7. 使用您的数据更改USERNAME, IPADDRESS, 。PASSWORD
  8. 类型FLUSH PRIVILEGES;
  9. 现在重新开始 SQL 输入sudo service mysql start
  10. 关闭终端。

此后,您也可以将数据库从外部连接到服务器。如果您有更好的贡献,也请分享。

注意:请记住,您必须更改bind-address = 127.0.0.1# bind-address = 127.0.0.1允许连接/etc/mysql/my.cnf

相关内容