首先,你必须要有 *** 作系统 的root权限了。也就说需要以root的身份登录到 *** 作系统,然后进行一下 *** 作。
编辑文件,找到[mysqld],删除skip-grant-tables这一行
:wq! #保存退出
大功告成!
PS:当然方法不止一种,以上是我比较喜欢用的方法。
(适用于管理员或者有全局权限的用户重设其它用户的密码)
进入命令行模式
更改密码:
mysql -u root -pEnter password:
mysql>use mysql; 选择数据库
Database changed
mysql> UPDATE user SET password=PASSWORD("新密码") WHERE user='你的用户名';
mysql> FLUSH PRIVILEGES;
mysql> quit;
更改用户名:
mysql -u root -pEnter password:
mysql> use mysql; 选择数据库
Database changed
mysql> update user set user="新用户名" where user="root"; 将用户名为root的改为新用户名
mysql> flush privileges; 刷新权限
mysql> exit方法1 使用phpmyadmin,这是最简单的了,修改mysql库的user表, 不过别忘了使用PASSWORD函数。 方法2 使用mysqladmin,这是前面声明的一个特例。 以下为引用的内容:mysqladmin -u root -p password mypasswd 输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。 把命令里的root改为你的用户名,你就可以改你自己的密码了。 当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin, 那么这种方法就是无效的。 而且mysqladmin无法把密码清空。 下面的方法都在mysql提示符下使用,且必须有mysql的root权限: 方法3 以下为引用的内容:mysql> INSERT INTO mysqluser (Host,User,Password)VALUES(\%,jeffrey,PASSWORDmysql> FLUSH PRIVILEGES 确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。在《mysql中文参考手册》里有这个例子,所以我也就写出来了。 注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。 方法4 和方法三一样,只是使用了REPLACE语句 以下为引用的内容:mysql> REPLACE INTO mysqluser (Host,User,Password)VALUES(\%,jeffrey,PASSWORDmysql> FLUSH PRIVILEGES 方法5使用SET PASSWORD语句, mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD你也必须使用PASSWORD()函数, 但是不需要使用FLUSH PRIVILEGES。 方法6 使用GRANT IDENTIFIED BY语句 mysql> GRANT USAGE ON TO jeffrey@"%" IDENTIFIED BY这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。停止mysql服务
# service mysqld stop
启动mysqld_safe ,跳过启动授权表。启动时加上skip-grant-tables参数目的是在启动mysql时不启动grant-tables,授权表。这样就可以修改root的密码了。
# mysqld_safe --skip-grant-tables &
登录mysql,并修改密码:
# mysql -uroot -p ----要求输入密码时,直接回车即可。
> use mysql;
> update user set password=PASSWORD('12345678') where user="root"; ---将root密码设置为12345678
> flush privileges;
> quit
杀死mysqld_safe进程,并重启mysqld。
# kill -9 11283 (11283为mysqld_safe进程)
# service mysqld start
# mysql -uroot -p (输入密码12345678即可)windows下修改MySQL密码的方法
如果在Windows下忘记了MySQL的密码,可以这样做:
1关闭正在运行的MySQL服务:net stop mysql或 在windows 任务管理器中结束 mysqldexe 进程或在 管理工具里面的服务找到 mysql服务 ,将其停止;
命令如下:
C:\Users\Administrator>net stop mysql
MySQL 服务正在停止
MySQL 服务已成功停止。
打开命令行,转到mysql的bin目录下;
命令如下:
C:\Users\Administrator>cd C:\Program Files\MySQL\MySQL Server 55\bin
C:\Program Files\MySQL\MySQL Server 55\bin>
3输入:mysqld -nt --skip-grant-tables
然后回车,如果没有错误信息,就行了;
注:skip-grant-tables参数用了之后,就可以跳过登录校验;
命令如下:
C:\Program Files\MySQL\MySQL Server 55\bin>mysqld -nt --skip-grant-tables
140317 13:23:11 [Warning] option 'new': boolean value 't' wasn't recognized Set
to OFF
4再打开一个命令行(因为刚才那个DOS窗口已经不能动了),同样转到mysql的bin目录下;
5直接输入 mysql 并回车,如果成功,将出现MySQL提示符 >
6切换到mysql表
命令如下:
mysql>USE mysql;
7可以修改密码了:
命令如下:
UPDATE user SET password=PASSWORD("123456") WHERE user="root";
8刷新权限,不要忘记了:
命令如下:
mysql>FLUSH PRIVILEGES;
9退出:(退出的方法很多 有quit、exit、ctrl+c、\q 等等);
10注销或重启计算机,然后打开MySQL服务,使用用户名root和设置的新密码就可以登录了。
更改mysql密码常用的三种方法
大部分情况下,一般用户没有权限更改密码,只有申请了权限或root用户才可以更改密码;
1方法1:用mysqladmin
命令如下:
mysqladmin -u root password "123456";
如果root已经设置过密码,采用如下方法
命令如下:
mysqladmin -u root password -p "123456";
2方法2: 用SET PASSWORD命令,不需要使用FLUSH PRIVILEGES;
命令如下:
mysql -u root -p
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
3方法3: 用UPDATE直接编辑user表
命令如下:
mysql> USE mysql;
mysql> UPDATE user SET Password = PASSWORD('123456') WHERE user='root';
1、点击左下角开始菜单按钮。
2、在开始菜单下方搜索框中搜索cmd。
3、敲下回车键,打开cmd窗口。
4、输入mysql -u root -p命令,然后回车。
5、提示输入密码,输入正确的密码,进入mysql控制台。
6、使用命令SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root111');命令是修改用户root的密码为root111。
通过命令行登录管理MySQL服务器(提示输入密码时直接回车):第一步,登陆mysql
[root@localhost bin]# /usr/local/webserver/mysql/bin/mysql -u root -p -S /tmp/mysqlsock
Enter password:
Welcome to the MySQL monitor Commands end with ; or \g
Your MySQL connection id is 1
Server version: 553-m3-log Source distribution
Type 'help;' or '\h' for help Type '\c' to clear the current input statement
第二步,使用msyql数据库mysql use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
第三步,修改root密码
mysql update user set password=password(root) where user='root';
Query OK, 4 rows affected (000 sec)
Rows matched: 4 Changed: 4 Warnings: 0
第四步,重启mysql或是刷新MySQL的系统权限相关表
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)