一般情况下都是不能正常链接数据库,错误提示一般为:
ERROR 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
其实网上大家问的最多的都是整个问题,说什么链接不到mysqld.sock,其实大家不妨看看mysql的错误日志就明白怎么回事,我这里的错误日志是在
/var/lib/mysql/*.err 你会发现mysql只所以不能启动,是因为/var/lib/mysql的权限不允许mysql服务访问,英文mysql默认是调用mysql用户来启动服务的,好了,既然知道是什么原因找到不能启动,那就简单了。我们只要
chown -R mysql:mysql /var/lib/mysql 就行,如果还是启动不了,再慢慢调试权限,反正一般启动不了都是权限的问题。
如果大家还是不能启动不了的话,那就用我的比较繁琐的权限的设置,反正我每次都是这么做的,一般不会有问题,见下:
chown -R root /usr/local/mysql
chgrp -R mysql /usr/local/mysql
chown -R root /usr/local/mysql/bin
chgrp -R mysql /usr/local/mysql/bin
chgrp -R mysql /var/lib/mysql
chmod 777 /var/lib/mysql
chown -R root /var/lib/mysql/mysql
chgrp -R mysql /var/lib/mysql/mysql
chmod 777 /var/lib/mysql/mysql
chown -R root /var/lib/mysql/mysql/*
chgrp -R mysql /var/lib/mysql/mysql/*
chmod 777 /var/lib/mysql/mysql/*
chmod 777 /usr/local/mysql/lib/mysql/libmysqlclient.a
做完上面的步骤,然后把你编译目录的一个脚本COPY过去
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
用ntsysv设置使mysql每次启动都能自动运行。
好了,至此mysql安装完毕,你可以这样起动你的mysql服务
/etc/rc.d/init.d/mysqld start
下面这步比较关键,
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
大家可以不做这步,大可以在编译其他软件的时候自定义myslq的库文件路径,但我还是喜欢把库文件链接到默认的位置,这样你在编译类似PHP,Vpopmail等软件时可以不用指定mysql的库文件地址。
分享到:
相关推荐
服务器断电后重启,导致MySQL连接失败。mysql.sock文件丢失,innodb引擎表损坏,最直接的解决办法。
在 CentOS7 系统上安装 MySQL 8 需要遵循一系列步骤,本文将详细介绍整个过程,包括如何解决可能出现的 `.sock` 文件问题。MySQL 8 是一个流行的开源关系型数据库管理系统,它提供了更高的性能、安全性和易用性。...
报错信息: ERROR 2002: Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (111) ...其实提示找不到 /tmp/mysql.sock有时也并不是/tmp目录下没这个文件,是启动命令不对。 /u
标题中的问题 "Can't connect to local MySQL through socket '/tmp/mysql.sock'" 是一个常见的MySQL连接错误,通常发生在尝试通过套接字文件(socket file)连接到本地MySQL服务器时。该问题通常涉及MySQL服务未...
MySQL数据库在运行时,会创建一个名为`mysql.sock`的套接字文件,用于在同一台机器上的客户端和服务端之间进行通信。当用户遇到"mysql.sock不见的问题"时,通常意味着MySQL服务没有正确启动或者配置文件有误,导致套...
描述中提到的问题是:“Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’”,这是一个常见的MySQL连接错误,意味着客户端尝试通过默认路径找不到MySQL服务器的套接字文件。...
1. `my.cnf`配置文件中,`[mysqld]`段落已经指定了`socket`参数,但`[client]`段落没有相应设置,导致客户端找不到正确的套接字路径。 2. `/tmp/mysql.sock`文件被意外删除或者由于系统清理临时文件导致丢失。 3. ...
5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL...
1. `my.cnf`配置文件中,[mysqld]部分设置了socket参数,但[client]部分未设置,导致客户端找不到正确的套接字文件。 2. `/tmp`目录中的mysql.sock文件被意外删除或被其他进程占用。 3. MySQL服务没有正常启动,因此...
4.16.1 从一个 3.22 版本升级到 3.23 4.16.2 从一个 3.21 版本升级到 3.22 4.16.3 从一个 3.20 版本升级到 3.21 4.16.4 升级到其他的体系结构 5 MySQL 与标准的兼容性? 5.1 MySQL对...
mysql.default_socket = /data/mysql/mysql.sock [mysqli] mysql.default_socket = /data/mysql/mysql.sock ``` 5. **重启服务**: 最后,启动Apache和MySQL服务,确保所有更改生效,并且服务能够正常运行: ...
在Mac OS系统中,当你遇到无法使用`localhost`连接到MySQL数据库的问题时,这通常涉及到网络连接机制和系统配置的差异。在这个问题中,我们发现`localhost`与`127.0.0.1`在连接MySQL时表现不同,这是因为它们采用的...
5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL...
5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL...
使用cd命令切换到MySQL安装目录,然后使用mysqld命令初始化MySQL,命令如下: ``` cd /opt/mysql ./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/ ``` 初始化完成之后,...
5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL...
5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL...
- `cp ./support-files/mysql.server /etc/init.d/mysql.server`: 复制MySQL服务启动脚本到系统路径。 - `./etc/init.d/mysql.server start`: 启动MySQL服务。 - `./bin/mysqladmin -u root password '123456'`: ...
5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 ...