连接MySQL找不到mysql.sock文件的解决办法
运行程序可能会报错:Can’t connect to local MySQL Server through socket ‘/tmp/mysql.sock’
这个错误的提示是说,不能通过’/tmp/mysql.sock’连接到服务器。Mysql.sock是创建与mysqld服务器相关的MySQL通信端点所使用的套接字。而PHP标准配置正是通过’/tmp/mysql.sock’来连接数据库,可能是一些mysql的安装方法将mysql.sock放到了别的地方,可以通过修改/etc/mysql/my.cnf文件(或者/etc/my.conf文件,和mysql安装的方法有关,该配置文件的路径可能会有所不同)来修改它,打开文件可以看到如下的语句:
[mysqld]
Socket = /var/lib/mysql/mysql.sock
说明mysqld.sock文件放在了/var/lib/mysql/文件夹下,所以不能在/tmp路径下找到该文件,通过做一个链接文件就可以解决这个问题:
您可以在命令行下手动输入如下命令:
ln -s /var/lib/mysqld/mysqld.sock /tmp/mysql.sock
修改完之后,程序就可以正常启动了。
如果还是不能启动的话,可能是由于MySQL服务器没有打开,如果MySQL服务器没有打开的话,在/var/lib/mysql/目录下就不会有mysql.sock这个文件,所以即使做了链接文件就没有用,因为它根本找不到/var/lib/mysql/mysql.sock文件。所以使用命令开启MySQL服务器:
$service mysqld start
如果想让MySQL服务器在每次计算机重启时启动,键入如下命令(root用户身份):
$chkconfig mysqld on
相关文档:
http://javeye.javaeye.com/blog/558093
我们知道,group by可以将sql查询结果按照group by后面列进行分类显示。比如:
Sql代码
select
columnA,columnB
from
table
group
by
columnA,columnB
select columnA,columnB from table group by columnA,colum ......
MySQL安装完成后不象SQL Server默认安装在一个目录,它的数据库文件、配置文件和命令文件分别在不同的目录,了解这些目录非常重要,尤其对于Linux的初学者,因为 Linux本身的目录结构就比较复杂,如果搞不清楚MySQL的安装目录那就无从谈起深入学习。下面就介绍一下这几个目录。
(1)数据库目录
......
注意:MySQL中每个命令后都要以分号;结尾。
(1)显示数据库
mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.04 sec)
Mysql刚安装完有两个数据库:mysql和test。其中,mysql库非常重要,它里面有MyS ......
默认情况下Linux内的mysql数据库mysql.user表内的用户权限只是对localhost即本机才能登陆。所以需要更改权限,否则无法使用Mysql Administrator连接服务器,会发生如下所示的错误:
MySQL Administrator 1.1.9配置,连接mysql数据库
Could no ......