进入mysql安装目录的bin文件夹(客户都没设置环境变量找不到mysql命令只能到那个目录)
比如:D:\Program Files\MySQL\MySQL Server 5.0\bin>
1.暂停mysql服务;
2.忽略授权问题;
3.另一个命令行进去myql;
4.重置root密码并刷新授权表;
5.任务管理器杀掉mysql进程;
6.重启mysql服务;
>net stop mysql
>mysqld --skip-grant-tables
开另外一个命令行窗口,一样进入那个目录
>mysql -u root -p
>update mysql.user set password=PASSWORD("新密码") where User="root"
>flush privileges
任务管理器杀掉mysql进程
>net start mysql
#################################################################
vi /etc/my.cnf 在[mysqld]添加
skip-grant-tables
/etc/init.d/mysql restart
mysql
>update mysql.user set password=PASSWORD("新密码") where User="root"
>flush privileges
/etc/init.d/mysql restart
方法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条)