点击上方【运愁维卧】关注,回复消息“0101”,获取职场N多简历模板、面试经验以及IT资料包~
前面已经介绍了MySQL的多种部署方式,大家可以选择适合自己的:
在一次编译安装后,发现通过mysqladmin修改密码时报关于socket的错误,特此整理了一下此错误的几种解决方式。
方法一:修改/etc/my.cnf配置文件中的socket路径
cmake编译完成后,登录mysql后修改了密码为jay123,此时想通过mysqladmin来尝试修改密码,发现报错如下
根据如下报错内容,可以发现应该是socket文件路径问题
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)'
Check that mysqld is running and that the socket: '
复制
根据报错提示,修改/etc/my.cnf文件中socket路径。(编译时配置文件中路径是socket=/tmp/mysql.sock)
[root@ansible_nfs ~]# vim /etc/my.cnf
[mysqld]
user=mysql
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock
#修改socket路径
server_id=6
port=3306
[mysql]
socket=/var/lib/mysql/mysql.sock
#修改socket路径
[root@ansible_nfs ~]#
复制
同时检查socket路径目录是否存在(没有就创建),并注意授权
mkdir var/lib/mysql
chown -R mysql.mysql var/lib/mysql
复制
重启mysql服务
systemctl restart mysqld
systemctl status mysqld
复制
使用mysqladmin重新来修改密码,使用新密码就可以登陆mysql了。
[root@ansible_nfs ~]# mysqladmin -uroot -p password jay718
Enter password: (输入旧密码)
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
复制
ln -s tmp/mysql.sock var/lib/mysql/mysql.sock
复制
systemctl restart mysqld
复制
方法三:修改/etc/my.cnf配置文件,增加[client]模块
[root@ansible_nfs ~]# vim etc/my.cnf
[mysqld]
user=mysql
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
server_id=6
port=3306
[client]
socket=/tmp/mysql.sock
#增加client模块,,以上参数会被 MySQL客户端应用读取
复制
再通过mysqladmin来修改密码,OK。
[root@ansible_nfs ~]# mysqladmin -uroot -p password jay123
Enter password:
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
[root@ansible_nfs ~]#
复制
扩展:修改密码的几种方式,如修改密码为jay123
1、不需要进入mysql就可以修改
[root@ansible_nfs] mysqladmin -uroot -p password jay123
复制
2、要进入到mysql中
mysql> set password=password('jay123')
复制
3、要进入到mysql中
mysql> alter user 'root'@'localhost' identified by 'jay123';
复制
文章转载自运愁维卧,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【MySQL 30周年庆】MySQL 8.0 OCP考试限时免费!教你免费领考券
墨天轮小教习
2697次阅读
2025-04-25 18:53:11
MySQL 30 周年庆!MySQL 8.4 认证免费考!这次是认真的。。。
严少安
803次阅读
2025-04-25 15:30:58
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
451次阅读
2025-04-17 17:02:24
MySQL 9.3 正式 GA,我却大失所望,新特性亮点与隐忧并存?
JiekeXu
411次阅读
2025-04-15 23:49:58
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
368次阅读
2025-04-15 14:48:05
记录MySQL数据库的一些奇怪的迁移需求!
陈举超
263次阅读
2025-04-15 15:27:53
MySQL 8.0 OCP 1Z0-908 考试解析指南(二)
JiekeXu
242次阅读
2025-04-30 17:37:37
SQL优化 - explain查看SQL执行计划(下)
金同学
227次阅读
2025-05-06 14:40:00
MySQL 8.4 新特性深度解析:功能增强、废弃项与移除项全指南
JiekeXu
220次阅读
2025-04-18 20:21:32
MySQL 8.0 OCP 1Z0-908 考试题解析指南
青年数据库学习互助会
178次阅读
2025-04-30 12:17:54