
windows环境中:%MySQL_installdir%\my.ini //MySQL安装目录下的my.ini配置文件。
linux环境中:/etc/my.cnf
在[MySQLd]配置段添加如下一行:skip-grant-tables
保存退出编辑。
2、然后重启MySQL服务
windows环境中:
net stop MySQL
net start MySQL
linux环境中:
/etc/init.d/MySQLd restart
3、设置新的ROOT密码
然后再在cmd命令行下执行:
MySQL -uroot -p MySQL
要求输入密码时直接回车无需密码即可进入数据库了。
现在我们执行如下语句把root密码更新为 123456:
update user set password=PASSWORD("123456") where user='root'
quit 退出MySQL。
4、还原配置文件并重启服务
然后修改MySQL配置文件把刚才添加的那一行(skip-grant-tables)删除。
再次重起MySQL服务,即可
二.修改MySQL的用户名和密码:(未证实)
方法一:(适用于管理员或者有全局权限的用户重设其它用户的密码)
进入命令行模式
mysql -u root mysql
mysql>UPDATE user SET password=PASSWORD("new password") WHERE user='name'
mysql>FLUSH PRIVILEGES
mysql>QUIT
方法二:(应用同上,只是方法不同)
mysql -u root mysql
mysql>SET PASSWORD FOR name=PASSWORD('new password')
mysql>QUIT
最后必杀技:
mysqladmin -u root "old password" "new password"
注:以上name请用你的用户名来替代,new password请输入你想要设置的密码。
重置MYSQL的root密码的方法:1.停止正在运行的MySQL进程
killall -TERM mysqld
2.以安全模式启动MySQL
mysqld_safe –skip-grant-tables &
3.登陆MYSQL,完成上述两步以后就可以不用密码进入MySQL了
mysql -u root
4.更改密码, 到此我们就可以在mysql客户端提示符下直接修改用户信息表了
use mysql
select host, user, password from user
update user set password=password(“新密码”) where user=”root”
flush privileges
第一句:打开系统数据库“mysql”
第二句:查看一下当前用户信息表有哪 些用户都可以从哪个主机访问数据
第三句:直接修改用户密码,第四句是更新用户权限使其立即生效
5.退出控制台,启动服务
killall -TERM mysqld
service mysqld start
通过上述方法我成功重置了MYSQL的root密码
今天我们主要是讲一下关于linux忘记mysql密码处理方法,下面提供了5种linux忘记mysql密码找回方法哦。方法一:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql>update user set password=password(newpassword) where user=root
mysql>flush privileges
mysql>quit
# /etc/init.d/mysql restart
# mysql -uroot -p
enter password: <输入新设的密码newpassword>
mysql>
方法二:
直接使用/etc/mysql/debian.cnf文件中[client]节提供的用户名和密码:
# mysql -udebian-sys-maint -p
enter password: <输入[client]节的密码>
mysql>update user set password=password(newpassword) where user=root
mysql>flush privileges
mysql>quit
# mysql -uroot -p
enter password: <输入新设的密码newpassword>
mysql>
方法三:
这种方法我没有进行过测试,因为我的root用户默认密码已经被我修改过了,那位有空测试一下,把结果告诉我,谢谢!!
# mysql -uroot -p
enter password: <输入/etc/mysql/debian.cnf文件中[client]节提供的密码>
方法四:
方法如下: 1, 关闭mysql服务 /etc/init.d/mysqld stop 2,使用 –skip-grant-tables选项启动mysql服务,可以修 改/etc/inin.d/mysqld脚本启动位置增加此选项, vi /etc/init.d/mysqld
方法如下:
1, 关闭mysql服务
/etc/init.d/mysqld stop
2,使用 –skip-grant-tables选项启动mysql服务,可以修 改/etc/inin.d/mysqld脚本启动位置增加此选项,
vi /etc/init.d/mysqld
在下面运行启动的语句里增加--skip-grant-tables
/usr/bin/mysqld_safe --skip-grant-tables --datadir="$datadir" --socket="$socketfile"
--log-error="$errlogfile" --pid-file="$mypidfile"
加入--skip-grant-tables的意思是启动mysql服务的时候跳 过权限表认证。启动后,连接到mysql的root不需要口令
3,重新启动mysql服务
/etc/init.d/mysqld start
4. 修改root用户的密码;
mysql>update mysql.user set password=password(123456) where user=root;
mysql>flush privileges;
mysql>quit
5. 重新启动mysql,就可以使用 新密码登录了。
mysql
mysql -u root –p
输入密码:123456
6,关闭mysql服务
/etc/init.d/mysqld stop
7, 重新修改第2步修改的/etc/init.d/mysqld,使其保持原来不变,也就是取消--skip-grant-tables语句
8,重新 启动mysql服务
/etc/init.d/mysqld start
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)