登录多实例MySQL失败,修改密码临时解决,原因不明
昨天学习第11课“主从同步”的视频(L11-11-MySQL主从同步手把手实战操作详解w),再次遇到问题。
[root@Web ~]# mysql -uroot -p'oldboy3307' -S /data/3307/mysql.sock ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
上个月初学习安装多实例的时候,也遇到过这个报错。查看当时的日记,发现自己整理的文档也有很多问题。2个月之后再看,发现虽然想记录的很详细,但思路还是有些乱。
根据日记里的记录:使用如下的命令启动数据库服务。
[root@Web ~]# mysqld_safe --defaults-file=/data/3307/my.cnf --skip-grant-table & [1] 4959 140726 19:04:23 mysqld_safe Logging to '/data/3307/mysql_oldboy3307.err'. 140726 19:04:23 mysqld_safe Starting mysqld daemon with databases from /data/3307/data
登录数据库后,使用授权语句竟然报错。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "111"; ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
至今也不明白这个报错是什么意思,百度上只是说可以通过刷新权限“flush privileges;”解决。
尝试正常启动数据库:
[root@Web ~]# /data/3307/mysql start Starting MySQL...
使用另外的命令登录数据库,也是报错。
[root@Web ~]# mysql -uroot -p -S /data/3307/mysql.sock -h 127.0.0.1 Enter password: ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
最后决定,还是直接在数据库里把root密码改了再说。
[root@Web ~]# mysqld_safe --defaults-file=/data/3307/my.cnf --skip-grant-table & [1] 5535 140726 19:15:56 mysqld_safe Logging to '/data/3307/mysql_oldboy3307.err'. 140726 19:15:56 mysqld_safe Starting mysqld daemon with databases from /data/3307/data[root@Web ~]# netstat -lnt|grep 330 tcp 0 0 0.0.0.0:3307 0.0.0.0:* LISTEN [root@Web ~]# mysql -uroot -S /data/3307/mysql.sock Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.1.62-log Source distributionCopyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> select user,host,password from mysql.user; +-------+-------------+-------------------------------------------+ | user | host | password | +-------+-------------+-------------------------------------------+ | root | % | *007FFCA4271EE782CBEE4DB65344C906C10915BB | | root | localhost | *007FFCA4271EE782CBEE4DB65344C906C10915BB | | root | 127.0.0.1 | *007FFCA4271EE782CBEE4DB65344C906C10915BB | | user2 | localhost | *12A20BE57AF67CBF230D55FD33FBAF5230CFDBC4 | | rep | 192.168.1.% | *FE28814B4A8B3309DAC6ED7D3237ADED6DA1E515 | +-------+-------------+-------------------------------------------+ 5 rows in set (0.00 sec)mysql> update mysql.user set password=PASSWORD('123456') where user='root'; Query OK, 3 rows affected (0.00 sec) Rows matched: 3 Changed: 3 Warnings: 0mysql> quit Bye
看到没有,修改密码之后我竟然没有刷新权限。结果,登录的时候就容易出现问题。当然,不是一定会出现问题。
我这里修改密码为“123456”之后,登录数据库是没有问题的。但是,在数据库里再次把密码修改为“oldboy3307”,退出再次登录数据库,就又报错了。
把数据库的root密码再次修改为“123456”之后,再来一遍:
[root@Web ~]# mysql -uroot -p'123456' -S /data/3307/mysql.sock Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.1.62-log Source distributionCopyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> update mysql.user set password=PASSWORD('oldboy3307') where user='root'; Query OK, 3 rows affected (0.00 sec) Rows matched: 3 Changed: 3 Warnings: 0mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)mysql> quit Bye [root@Web ~]# mysql -uroot -p'oldboy3307' -S /data/3307/mysql.sock Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.1.62-log Source distributionCopyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> quit Bye
这次,最后的问题,似乎是没有刷新权限的原因。但是,看起来这又好像只是表象。
刚才登录数据库还一切正常,为什么退出之后就不能登录了呢?为什么修改密码之后,就又可以登录了呢?为什么有时候在修改密码之后,即使没有刷新权限也可以登录数据库,有时候又不能登录呢?
保留这些问题,慢慢研究。
整理出这个文档,这是我目前唯一能做的了。
转载于:https://blog.51cto.com/gagarin/1530937
登录多实例MySQL失败,修改密码临时解决,原因不明相关推荐
- win安装完mysql,不知道临时密码怎么办,如何获取临时密码?密码是多少?mysql如何修改密码?解决方法来了。
其实,当你的mysql安装完以后,临时密码肯定出现过,只是你没有注意到,又或者第一次你的命令没有加–console让他打印出来,后来你加了他也不打印了. 来看看解决方法. 1.首先,当我们输入mysq ...
- 在Linux环境下mysql的root密码忘记解决方法 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 2.修改MySQL的登录设置: # vi /etc/my.c
在Linux环境下mysql的root密码忘记解决方法 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 2.修改MySQL的登录设置: # vi /etc/my.cnf ...
- mysql数据库修改密码
在使用数据库时,MySQL 需要修改密码的情况. 1. 使用 SET PASSWORD 命令 输入命令mysql -u root -p指定 root 用户登录 MySQL,输入后按回车键输入密码.如果 ...
- mysql数据库修改密码的几种方法(用命令修改)
方法1: 用SET PASSWORD命令 首先登录MySQL. 格式:mysql> set password for 用户名@localhost = password('新密码'); 例子:my ...
- mysql 初始化修改密码问题
文章目录 mysql 初始化修改密码问题 mysql 初始化修改密码问题 在使用二进制安装完成 MySQL 之后(这里二进制安装时是执行的没有设置初始密码的),安装详情可参考:https://blog ...
- C#窗体程序连接SQL Server数据库实现账号登录、账号注册、修改密码、账号注销和实名认证(不定时更新)
目录 一.配置数据库文件和程序代码 二.配置C#窗体控件布局和源代码 1.窗体Form1:账号登录界面 2.窗体Form2:账号注册界面 3.窗体Form3:主界面 4.窗体Form4:修改密码界面 ...
- MySql数据库修改密码【详细教程】
MySql数据库修改密码[详细教程] 一.找到mysql的安装路径 找到mysql的bin文件夹所在的路径. [TIPS] 如果忘了具体的文件路径,可以点开始- >搜索,输入 services. ...
- linux下mysql的root密码忘记解决方
linux下mysql的root密码忘记解决方 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没 ...
- 在Linux环境下mysql的root密码忘记解决方法(三种)
这篇文章主要介绍了在Linux环境下mysql的root密码忘记解决方法,详细的介绍了3种解决办法,具有一定的参考价值,有兴趣的可以了解一下. MySQL密码的恢复方法之一 1.首先确认服务器出于安全 ...
最新文章
- 循环语句——7月23日
- 有哪些LSTM(Long Short Term Memory)和RNN(Recurrent)网络的教程?
- Java在加载阶段会加载依赖吗,Java程序编译和运行过程之 一个对象的生命之旅(类加载和类加载器)...
- CSS之flex需要知道的一切(二)
- 将一个数组中不重复_你不知道的解法:数组中重复的数字
- GCD三部曲之一---辗转相除法
- 【机器学习-西瓜书】六、支持向量机:核技巧;软间隔;惩罚因子C;松弛变量
- Atitit 微信开发文档总结获取token和菜单管理功能 /bookmarksHtmlEverythingIndexPrj/src/com/attilax/wechatToto/wechatMen
- 微信小程序之海报生成
- 总结命令行05:Kafka
- 室内设计软件除了常用的几款还有7…
- python-使用API来探索GitHub上星级最高的项目
- 基于深度学习的无人驾驶道路检测
- 如何把单词批量导入金山词霸生词本?
- WEB安全基础 - - - XRAY使用
- (转载)MySQL数据库的主键和外键详解
- CryENGINE3系列总结教程之UI/HUD(一)制作生命条弹药条Flash部分
- 【Python】map函数的具体做法。Python3运行map函数后,报错提示“map object at 0x00C42E50”(可能是其他0x********),解决方法
- 从服务端下载文件到本地windows
- hyperMILL2018刀具库模板
热门文章
- ITK:提取二进制图像中斑点的内部和外部边界
- 与C ++中的QML对象进行交互
- Qt Creator调试器故障排除
- 经典C语言程序100例之九三
- c++ 预处理命令 #if, #ifdef, #ifndef, #else, #elif, #endif用法
- c++TCP的三次握手和四次挥手
- java 很垃圾_JAVA吧真的很垃圾!!!
- 11gpath失败 oracle_Oracle 11gR2执行DBCA报错误
- 20、21_链式法则、MLP(多层感知器模型)反向传播
- Hibernate延迟加载