我在try 连接mysql时遇到了一个大问题.当我 run 时:

/usr/local/mysql/bin/mysql start

我有以下错误:

Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (38)

/var/mysql目录下有mysql.sock个.

/etc/my.cnf年中,我有:

[client]
port=3306
socket=/var/mysql/mysql.sock

[mysqld]
port=3306
socket=/var/mysql/mysql.sock
key_buffer_size=16M
max_allowed_packet=8M

/etc/php.ini年里我有:

; Default socket name for local MySQL connects.  If empty, uses the built-in
; MySQL defaults.
mysql.default_socket = /var/mysql/mysql.sock

我已经用sudo /opt/local/apache2/bin/apachectl restart重新启动了apache

但我仍然有错误.

否则,我不知道这是否相关,但当我做mysql_config --sockets我得到

--socket         [/tmp/mysql.sock]

推荐答案

如果你的文件是我的.cnf(通常在/etc/mysql/文件夹中)正确配置为

socket=/var/lib/mysql/mysql.sock

您可以使用以下命令判断mysql是否正在运行:

mysqladmin -u root -p status

try 更改您对mysql文件夹的权限.如果您在当地工作,您可以try :

sudo chmod -R 755 /var/lib/mysql/

这帮我解决了

Mysql相关问答推荐

如何计算库存中每个物品的平均价格php mysql

try 使用TypeORM创建新表时出现SQL语法错误

MySQL问题难以将文本字符串转换为正确的日期格式

MySQL RDS ALTER TABLE ENUM短暂中断了我的数据库连接

如何将左联接的小计/总计行中的所有列作废

为什么嵌套循环逻辑不能按预期工作

如何在 MySQL 中对同一个表的多个列进行 INNER JOIN

如何通过SQL来计算到达特定值的行的数量

多列分组并进行求和

使用mysql查询获取不关注user1的user3

检索按键列值分组的最新日期 (MySql)

MySQL 中的 LATERAL 语法 - 是否只是说左表首先执行以便下一个可以引用它?

我将如何构建一个 SQL 查询来从交易表中 Select 第一次存款、第二次存款和额外存款

Facebook user_id:big_int、int 还是 string?

如何删除没有临时表的 MySQL 表中的所有重复记录

Doctrine2 迁移向下迁移并从浏览器而不是命令行迁移

将行插入 MySQL 数据库的最有效方法

电话号码和地址的mysql数据类型

如何将本地托管的 MySQL 数据库与 docker 容器连接

在 MySQL Workbench 中导出超过 1000 条记录的查询结果