我使用AWS服务器(ubuntu)使用mysqldump命令备份我的远程mysql数据库。
由于我更改了db密码,因此无法使用/etc/mysql/my.cnf
配置文件从计算机远程连接。
当我使用命令
时mysql -u root -h 1.1.1.1 -p 123456
它已成功连接,但是当我尝试通过使用mysql配置文件/my.cnf
进行连接时只需输入
mysql
我收到错误消息:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
我重新启动了数据库服务器(我不需要在aws上运行mysql服务,因为我已远程连接)
我不想通过任何套接字连接
my.cnf
文件内容:
[client]
port = 3306
host = 1.1.1.1
user = root
password = 123456
[mysqld]
user = mysql
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
bind-address = 1.1.1.1
我不知道发生了什么变化,除了密码,我在db本身和配置文件中都没有改变任何东西,所以我不知道它为什么停止工作。
答案 0 :(得分:2)
在my.cnf中添加 protocol = tcp
行[client]
port = 3306
host = 1.1.1.1
user = root
password = 12345
protocol = tcp
强制MySQL使用TCP而不是套接字连接