全部博文(247)
分类: Mysql/postgreSQL
2013-12-12 09:29:51
首先启动命令行
1.在命令行运行:taskkill /f /im mysqld-nt.exe
下面的操作是操作mysql中bin目录下的一些程序,如果没有配置环境变量的话,需要切换到mysql的bin
目录下执行如下语句。不然无效
2.继续在命令行运行:mysqld-nt --skip-grant-tables
3.新开一个命令行运行:mysql -u root (如果没有配置mysql的bin环境变量的话需要切换到bin目录下执行此语句)
如果不想改密码,只是想看原来的密码的话。可以在命令行执行这个语句
select host,user,password from mysql.user;//即可查看到用户和密码
如果要修改密码的话,在命令行下执行下面的语句
update mysql.user set password='这里填写你要设置的密码' where user='root';
这里我设置了空密码。
完成这些操作后,继续在命令行运行
taskkill /f /im mysqld-nt.exe;//安全着想,先结束,因为现在这样是可以用mysql -u root 直接登录的
net start mysql;//启动mysql服务
整理了以下四种在MySQL中修改root密码的方法:
方法1: 用SET PASSWORD命令
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
方法2:用mysqladmin
mysqladmin -u root password "newpass"
如果root已经设置过密码,采用如下方法
mysqladmin -u root password oldpass "newpass"
方法3: 用UPDATE直接编辑user表
mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
在丢失root密码的时候,可以这样
mysqld_safe --skip-grant-tables&
mysql -u root mysql
mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
mysql> FLUSH PRIVILEGES;