mysql socket连接_MySql的2种连接方式

本文介绍了MySQL通过本地socket和远程IP的两种连接方式。本地连接时,详细解析了如何使用指定的socket文件,并讨论了my.cnf配置中socket参数的影响。当socket配置改变时,给出了两种解决问题的方法,包括指定新的socket文件或同步my.cnf中的配置。对于远程连接,展示了通过IP地址和端口连接MySQL服务器的命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本地socket连接

mysql -u[用户名]  -p[密码] -S[指定sock文件]

查看my.cnf

[root@nfs01 ~]# cat /etc/my.cnf

[mysqld]

user = mysql

basedir = /app/mysql

datadir = /data-mysql

port = 3306

server_id = 3

socket = /tmp/mysql.sock     #服务端启动产生的sock

[mysql]

socket = /tmp/mysql.sock     #客户端连接服务器指定的sock

对于socket注意点

当[mysqld]服务端字段和[mysql]客户端字段都不配置socket关键字时,mysql启动默认在tmp目录创建sock文件,并且mysql不需要加-S参数指定sock,默认会自动去tmp目录下读取sock文件。

当把my.cnf中[mysqld]服务端字段的socket参数修改成如下

[mysqld]

user = mysql

basedir = /app/mysql

datadir = /data-mysql

port = 3306

server_id = 3

socket = /tmp/mmmm.sock

启动数据库查看sock文件

[root@nfs01 ~]# ls /tmp/*.sock

/tmp/mmmm.sock

默认连接数据库会报如下错误

[root@nfs01 ~]# mysql -uroot -p1

mysql: [Warning] Using a password on the command line interface can be insecure.

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)解决方式1

指定sock文件之后成功进入数据库

[root@nfs01 ~]# mysql -uroot -p1 -S /tmp/mmmm.sock

解决方式2

在my.cnf文件中的[mysql]字段添加和[mysqld]一样的socket参数

远程连接

mysql -u[用户名]  -p[密码] -h[mysql服务端ip地址] -P[端口]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值