我的Apache和mysql服务器安装在同一台Linux服务器上。
在我的mysql配置文件/etc/mysql/my.cnf
中,我有这一行:
bind-address = 192.168.0.12
在我的mysql数据库中,我的用户db_user
只能从localhost
User Server Password Global privileges "Grant"
db_user localhost Yes USAGE No
我不明白的是:如果mysql配置为仅绑定192.168.0.12,如何使用db_user和localhost域连接到mysql表?
我检查了hosts文件,localhost发送到127.0.0.1而不是192.168.0.12。
另一方面,服务器上的这个命令工作:
mysql -udb_user -p“password”thedatabase
答案 0 :(得分:2)
您应该更改路由,以使服务器连接到192.168.0.12
而不是127.0.0.1
。它知道192.168.0.12
是本地主机,因此使用127.0.0.1
而不是192.168.0.12
。
答案 1 :(得分:2)
如果您指定localhost
作为要连接的主机MySQL will use a socket,而不是TCP连接。