连接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
相关文档:
一、常用字符串函数
1.CONCAT(str1,str2,...)
mysql> ? concat;
mysql> SELECT CONCAT('My', 'S', 'QL');
+-------------------------+
| CONCAT('My', 'S', 'QL') |
+-------------------------+
| MySQL ......
最近了解了一下MYSQL注入,也实际操作了一下,确实发现了他的威力。
一个注入漏洞可以让人直接拿到服务器权限。
总结一下:
1,目录的权限不能太高,不然别人能往里写文件,以前用0777真是太愚蠢了。
2,严格过滤数据,整形一律转int或用mysql_escape_string
3,设置合理的数据库权限,不要用ROOT,不然会死得很惨。
4 ......
http://www.3d308.cn/article.asp?id=37
shell> mysql -u root mysql
mysql> Update user SET Password=PASSWORD('new_password')
Where user='root';
mysql> FLUSH PRIVILEGES;
......
MySQL client programs:
mysql
The command-line tool for interactively entering SQL statements or executing them from a file in batch mode. See Section 4.5.1, “mysql — The MySQL Command-Line Tool”.
mysqladmin
A client that performs administrative operations, such as crea ......
注意:MySQL中每个命令后都要以分号;结尾。
(1)显示数据库
mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.04 sec)
Mysql刚安装完有两个数据库:mysql和test。其中,mysql库非常重要,它里面有MyS ......