1、打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址。
2、打开cmd命令提示符,进入上一步mysql.exe所在的文件夹。
3、输入命令mysqld --skip-grant-tables回车,此时就跳过了mysql的用户验证。
注意:输入此命令之后命令行就无法 *** 作了,此时可以再打开一个新的命令行。
注意:在输入此命令之前先在任务管理器中结束mysqld.exe进程,确保mysql服务器端已结束运行。
4、直接输入mysql,不需要带任何登录参数直接回车就可以登陆上数据库。
5、输入show databases可以看到所有数据库说明成功登陆。
6、其中mysql库就是保存用户名的地方。输入use mysql选择mysql数据库。
7、show tables查看所有表,会发现有个user表,这里存放的就是用户名,密码,权限等等账户信息。
8、输入select user,host,password from user来查看账户信息。至此,便找到了用户名和密码。
这样就解决了“找到mysql的用户名和密码”的问题。
(1).由于MySQL5.7在安装完后,第一次启动时,会在root目录下生产一个随机的密码,文件名为 .mysql_secret所以,登录时需要用随机密码登录,然后通过以下命令修改密码
“SET PASSWORD = PASSWORD(‘new password’)”
(2). 在忘记root密码的时候,
以windows为例:
1. 关闭正在运行的MySQL服务。
2. 打开DOS窗口,转到mysql\bin目录
3. 输入mysqld --skip-grant-tables 回车
--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
4. 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
5. 输入mysql回车,如果成功,将出现MySQL提示符 >.
6. 连接权限数据库: use mysql (别忘了最后加分号) .
7. 改密码:update user set password=password(“123”) where user=“root”(别忘了最后加分号) .
如果修改密码出现
**mysql修改密码错误 ERROR 1054 (42S22)**
则使用 mysql>update mysql.user set authentication_string=password(‘123456’) where user='root' and Host ='localhost'
或者 update MySQL.user set password=PASSWORD(‘123456’) where User='root'
8. mysql>flush privileges #更新权限
9. 退出 quit.
10. 注销系统,再进入,
输入 mysql -u root -p
使用用户名root和刚才设置的新密码123456登录。
(3). 知道root密码的时候
方法1: 用SET PASSWORD命令
首先登录MySQL。
格式:mysql>set password for 用户名@localhost = password('新密码')
例子:mysql>set password for root@localhost = password('123')
方法2:用mysqladmin
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123
方法3:用UPDATE直接编辑user表
首先登录MySQL。
mysql>use mysql
mysql>update user set password=password('123') where user='root' and host='localhost'
mysql>flush privileges
方法1: 用SET PASSWORD命令首先登录MySQL。
格式:mysql>set password for 用户名@localhost = password('新密码')
例子:mysql>set password for root@localhost = password('123')
方法2:用mysqladmin
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123
方法3:用UPDATE直接编辑user表
首先登录MySQL。
mysql>use mysql
mysql>update user set password=password('123') where user='root' and host='localhost'
mysql>flush privileges
二、无法登录的修改方式,限于有权限修改mysql安装文件(此方法适用于linux)
方法4:在忘记root密码的时候,可以这样
以windows为例:
1.进入mysql安装目录,打开my.ini文件
2.找到[mysqld]配置行(注意,不是[mysql]),在其下一行输入:skip-grant-tables(或者:--skip-grant-tables,两者区别是有时两个横线会导致服务无法重启需要测试应当添加否。)
3.cmd命令:services.msc,找到mysql服务并重启(使修改的配置文件生效)
4.mysql命令行:use mysql(进入系统配置库)
5.mysql命令行:update user set password=password("123") where user="root"(别忘了最后加分号,分号意味着命令的结束)
6.mysql命令行:flush privileges(刷新缓存,更新数据库读取的密码别忘了最后加分号,分号意味着命令的结束)
7.退出mysql,或重启服务,密码设置成功。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)