搜索
您的当前位置:首页正文

MYSQL修改root密码命令小结_MySQL

2023-11-21 来源:字库网

bitsCN.com一、请问在win2K命令提示符下怎样更改mysql的root管理员密码? >mysql -u root -p Enter password: ****** mysql> use mysql; mysql> update user set password=password('new_password') where user='root'; 通过这种方法就可以直接修改密码了。至于在CMD下能否登陆MySQL,就要在Windows环境变量PATH中添加“C:/Program Files/MySQL/MySQL Server 5.0/bin;”(请改为你自己的安装路径)了。 二、MYSQL 修改root密码命令 cmd下切换到 mysql 安装目录 例 d:/mysql/bin 前提:mysql用户root密码为空. 输入 mysql -u root mysql mysql> 状态下输入 update user set password=password('新密码') where user='root'; 回显 Query OK, 0 rows affected (0.00 sec) Rows matched: 2 Changed: 0 Warnings: 0 mysql> 状态下输入 FLUSH PRIVILEGES; 回显 Query OK, 0 rows affected (0.00 sec) mysql> 状态下输入 quit 退出 sql 注意每个命令后都要加上一个分号 ";" mysql 才开始执行该行命令 而第二个指令会让已载入记忆体的 mysql 系统资料库更新 重起 mysql . 停止MYSQL net stop mysql 开始MYSQL net start mysqlbitsCN.com

小编还为您整理了以下内容,可能对您也有帮助:

修改MYSQL密码的几种常用方法总结

首先要声明一点,大部分情况下,修改MySQL是需要有mysql里的root权限的, ­

所以一般用户无法更改密码,除非请求管理员。 ­

­

方法一 ­

使用phpmyadmin,这是最简单的了,修改mysql库的user表, ­

不过别忘了使用PASSWORD函数。 ­

­

方法二 ­

使用mysqladmin,这是前面声明的一个特例。 ­

mysqladmin -u root -p password mypasswd ­

输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。 ­

把命令里的root改为你的用户名,你就可以改你自己的密码了。 ­

当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin, ­

那么这种方法就是无效的。 ­

而且mysqladmin无法把密码清空。 ­

­

下面的方法都在mysql提示符下使用,且必须有mysql的root权限: ­

方法三 ­

mysql> INSERT INTO mysql.user (Host,User,Password) ­

VALUES('%','jeffrey',PASSWORD('biscuit')); ­

mysql> FLUSH PRIVILEGES ­

确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。 ­

在《mysql中文参考手册》里有这个例子,所以我也就写出来了。 ­

注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。 ­

­

方法四 ­

和方法三一样,只是使用了REPLACE语句 ­

mysql> REPLACE INTO mysql.user (Host,User,Password) ­

VALUES('%','jeffrey',PASSWORD('biscuit')); ­

mysql> FLUSH PRIVILEGES ­

­

方法五 ­

使用SET PASSWORD语句, ­

mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit'); ­

拟也必须使用PASSWORD()函数, ­

但是不需要使用FLUSH PRIVILEGES。 ­

­

方法六 ­

使用GRANT ... IDENTIFIED BY语句 ­

mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit'; ­

这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。 ­

­

注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。­

MySQL 忘记口令的解决办法­

如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。 ­

启动 MySQL :bin/safe_mysqld --skip-grant-tables & ­

就可以不需要密码就进入 MySQL 了。 ­

然后就是 ­

>use mysql­

>update user set password=password("new_pass") where user="root";­

>flush privileges;­

重新杀 MySQL ,用正常方法启动 MySQL 。 ­

­

注:使用phpmyadmin修改密码时一定要使用加密方式,否则修改后无法进入phpmyadmin!­

建议采用命令行修改密码­

进入mysql后­

mysql>update mysql.user set password=password('new password');­

mysql>flush privileges;­

如果采用phpmyadmin修改密码后无法登陆phpmyadmin,最简单的办法就是重装phpmyadmin,只需删除原来的phpmyadmin文件夹,重新将phpmyadmin得压缩包解压即可,此方法为本人在修改密码无法登陆时,想尽各种办法之后一气之下而想到的绝招,嘿嘿??­您可能感兴趣的文章:MySql增加用户、授权、修改密码等语句MYSQL基础之连接MYSQL、修改密码、添加用户MySQL修改密码方法总结在MySQL中修改密码及访问的设置方法详解MySQL的root密码忘记怎么办修改root密码的方式



如果哪天你忘记了线上MySQL数据库的root密码,怎么办?

大家往往会想到skip-grant-tables参数,具体步骤如下:

1. 关闭MySQL数据库,因为root密码忘记了,mysqladmin无法使用,此时,只能通过kill pid关闭程序。

在这里,科普一下kill 和kill -9的区别

默认参数下,kill 发送SIGTERM信号给进程,告诉进程,你需要被关闭,请自行停止运行并退出。
kill -9 发送SIGKILL信号给进程,告诉进程,你被终结了,请立刻退出。与SIGTERM相比,这个信号不能被捕获或忽略,同时接收这个信号的进程在收到这个信号时不能执行任何清理
所以,万不得已,不要通过kill -9杀掉进程,这可能导致MySQL数据库的物理结构损坏,无法重新启动。

2. 在my.cnf文件[mysqld]部分添加skip-grant-tables参数

3. 登录数据库,修改root账户的密码

以下是修改root密码的三种方式:

1> mysql> set password for 'root'@'localhost'=password('123'); 无需刷新权限表

2> mysql> update mysql.user set password=password("456") where user="root" and host="localhost";

mysql> flush privileges;

3> # mysqladmin -u root password "123"

4. 关闭数据库,注释掉skip-grant-tables参数,重新启动数据库。

上面这种方式虽然不错,但是有个问题,你必须重启数据库,对于线上环境,这可能是不被允许的。

下面来谈谈另一种方法,有点“黑暗科技”的味道

这个方法利用的是mysql.user表还是MyISAM引擎的特性。

1. 将该实例的mysql.user表copy到另一个实例的目录下,譬如,test数据库的目录下



2. 登录另一个实例数据库,修改上述三个文件的权限,并修改root密码

mysql> select user,host,password from test.user;
+------+-----------+-------------------------------------------+
| user | host | password |
+------+-----------+-------------------------------------------+
| root | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+------+-----------+-------------------------------------------+
1 row in set (0.00 sec)
mysql> update test.user set password=password("hello") where user="root" and host="localhost";
Query OK, 1 row affected (0.15 sec)
Rows matched: 1 Changed: 1 Warnings: 0
3. 将上述三个文件copy回源数据库



4. 获取mysqld的pid,通过kill -HUP `pidof mysqld`方式让mysqld进程重新加载配置文件



[root@keepalived01 ~]# mysql -phello
Warning: Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
[root@keepalived01 ~]# kill -HUP 4283
[root@keepalived01 ~]# mysql -phello
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 2528
Server version: 5.6.26 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql>
通过上述输出可以看出,kill -HUP之前,直接用密码hello登录被拒绝,kill -HUP之后,就可以直接登录了。

当然,以上方法仅供参考,在生产上慎用,毕竟安全压倒一切,天晓得哪里会出现问题。

MySQL的root密码忘记怎么办修改root密码的方式



如果哪天你忘记了线上MySQL数据库的root密码,怎么办?

大家往往会想到skip-grant-tables参数,具体步骤如下:

1. 关闭MySQL数据库,因为root密码忘记了,mysqladmin无法使用,此时,只能通过kill pid关闭程序。

在这里,科普一下kill 和kill -9的区别

默认参数下,kill 发送SIGTERM信号给进程,告诉进程,你需要被关闭,请自行停止运行并退出。
kill -9 发送SIGKILL信号给进程,告诉进程,你被终结了,请立刻退出。与SIGTERM相比,这个信号不能被捕获或忽略,同时接收这个信号的进程在收到这个信号时不能执行任何清理
所以,万不得已,不要通过kill -9杀掉进程,这可能导致MySQL数据库的物理结构损坏,无法重新启动。

2. 在my.cnf文件[mysqld]部分添加skip-grant-tables参数

3. 登录数据库,修改root账户的密码

以下是修改root密码的三种方式:

1> mysql> set password for 'root'@'localhost'=password('123'); 无需刷新权限表

2> mysql> update mysql.user set password=password("456") where user="root" and host="localhost";

mysql> flush privileges;

3> # mysqladmin -u root password "123"

4. 关闭数据库,注释掉skip-grant-tables参数,重新启动数据库。

上面这种方式虽然不错,但是有个问题,你必须重启数据库,对于线上环境,这可能是不被允许的。

下面来谈谈另一种方法,有点“黑暗科技”的味道

这个方法利用的是mysql.user表还是MyISAM引擎的特性。

1. 将该实例的mysql.user表copy到另一个实例的目录下,譬如,test数据库的目录下



2. 登录另一个实例数据库,修改上述三个文件的权限,并修改root密码

mysql> select user,host,password from test.user;
+------+-----------+-------------------------------------------+
| user | host | password |
+------+-----------+-------------------------------------------+
| root | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+------+-----------+-------------------------------------------+
1 row in set (0.00 sec)
mysql> update test.user set password=password("hello") where user="root" and host="localhost";
Query OK, 1 row affected (0.15 sec)
Rows matched: 1 Changed: 1 Warnings: 0
3. 将上述三个文件copy回源数据库



4. 获取mysqld的pid,通过kill -HUP `pidof mysqld`方式让mysqld进程重新加载配置文件



[root@keepalived01 ~]# mysql -phello
Warning: Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
[root@keepalived01 ~]# kill -HUP 4283
[root@keepalived01 ~]# mysql -phello
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 2528
Server version: 5.6.26 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql>
通过上述输出可以看出,kill -HUP之前,直接用密码hello登录被拒绝,kill -HUP之后,就可以直接登录了。

当然,以上方法仅供参考,在生产上慎用,毕竟安全压倒一切,天晓得哪里会出现问题。

怎么改mysql下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;

方法4:在忘记root密码的时候,可以这样 

以windows为例: 

1. 关闭正在运行的MySQL服务。 

2. 打开DOS窗口,转到mysqlbin目录。 

3. 输入mysqld _skip-grant-tables 回车。_skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。 

4. 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysqlbin目录。 

5. 输入mysql回车,如果成功,将出现MySQL提示符 >。 

6. 连接权限数据库: use mysql; 。 

6. 改密码:update user set password=password(“123”) where user=”root”;(别忘了最后加分号) 。 

7. 刷新权限(必须步骤):flush privileges; 。 

8. 退出 quit。 

9. 注销系统,再进入,使用用户名root和刚才设置的新密码123登录。

ROOT是一种存在于UNIX系统(如AIX、BSD等)和类UNIX系统(如大名鼎鼎的Linux,比如稳定到服务器都在用的Debian、适合长期作业成熟老道的Redhat、比较流行的Ubuntu和archlinux等Linux发行版以及Android系统)中的唯一的超级用户,其相当于Windows系统中的SYSTEM(XP及以下)/TrustedInstaller(Vista及以上)用户。其具有系统中所有的权限,如启动或停止一个进程,删除或增加用户,增加或者禁用硬件等等。

Mysql忘记root密码怎么办

MySQL有时候忘记了root密码是一件伤感的事,这种情况下,如何重置root的密码呢?

找到并编辑mysql的my.ini配置文件,在mysqld节点中添加上skip-grant-table. 如下:

# These let you safely reset the lost root password.

skip-grant-table

保存好修改,重启mysql服务。

现在就能不需要root密码的情况下连接上数据库。然后执行下面的更新:

USE mysql;

UPDATE USER

SET password = password('yournewpasswordhere')

WHERE USER = 'root'

AND host = 'localhost';

这样root密码就修改好了,这个时候,将my.ini中的skip-grant-table删除,再重启mysql service

下面介绍Windows 和 Linux 下的密码重置方法。

windows:

1.以系统管理员身份登陆系统。

2.打开cmd-----net start 查看mysql是否启动。启动的话就停止net stop mysql.

3.我的mysql安装在d:usrlocalmysql4bin下。

4.跳过权限检查启动mysql.

d:usrlocalmysqlbinmysqld-nt --skip-grant-tables

5.重新打开cmd。进到d:usrlocalmysql4bin下:

d:usrlocalmysqlbinmysqladmin -u root flush-privileges password "newpassword"

d:usrlocalmysqlbinmysqladmin -u root -p shutdown 这句提示你重新输密码。

6.在cmd里net start mysql

7.搞定了。

Linux:

MySQL root密码的恢复方法之一

如果忘记了MySQL root密码,可以用以下方法重新设置:

1. KILL掉系统里的MySQL进程;

killall -TERM MySQLd

2. 用以下命令启动MySQL,以不检查权限的方式启动;

safe_MySQLd --skip-grant-tables &

3. 然后用空密码方式使用root用户登录 MySQL;

MySQL -u root

4. 修改root用户的密码;

MySQL> update MySQL.user set password=PASSWORD('新密码') where User='root';

MySQL> flush privileges;

MySQL> quit

重新启动MySQL,就可以使用新密码登录了。

MySQLroot密码的恢复方法二

有可能你的系统没有 safe_MySQLd 程序(比如我现在用的 ubuntu操作系统, apt-get安装的MySQL) , 下面方法可以恢复

1. 停止MySQLd;

sudo /etc/init.d/MySQL stop

(您可能有其它的方法,总之停止MySQLd的运行就可以了)

2. 用以下命令启动MySQL,以不检查权限的方式启动;

MySQLd --skip-grant-tables &

3. 然后用空密码方式使用root用户登录 MySQL;

MySQL -u root

4. 修改root用户的密码;

MySQL> update MySQL.user set password=PASSWORD('newpassword') where User='root';

MySQL> flush privileges;

MySQL> quit

重新启动MySQL

/etc/init.d/MySQL restart

就可以使用新密码 newpassword 登录了。您可能感兴趣的文章:mysql root用户的密码修改和消除windows下mysql忘记root密码的解决方法重置MySQL数据库root密码(linux/windows)MYSQL 修改root密码命令小结忘记mysql数据库root用户密码重置方法[图文]强制修改mysql的root密码的六种方法分享(mysql忘记密码)windows环境中mysql忘记root密码的解决方法详解Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)MySQL——修改root密码的4种方法(以windows为例)mysql root密码的重设方法(亲测可用)不重启Mysql修改root密码的方法xampp中修改mysql默认空密码(root密码)的方法分享一键重置mysql的root密码的实现脚本

字库网还为您提供以下相关内容希望对您有帮助:

mysql修改root密码

方法1:使用 set password命令修改 MariaDB [(none)] set password for root@localhost = password(123456);方法2:使用update命令修改 MariaDB [(none)] update mysql.user set password=password(123456) where user=root and host=localhost;方法3:使用mysqladmin修改 [root@xuegod63 ~]# mysqladm...

mysql忘记旧密码后如何修改root密码?

首先,使用SET PASSWORD命令进行修改。打开命令行,输入"mysql",然后输入"set password for 用户名@localhost = password(新密码);",例如:"mysqlsetpasswordforroot@localhost=password(123);"第二种方法是通过mysqladmin工具,格式为"mysqladmin -u用户名 -p旧密码 password 新密码",比如"mysqladmin ...

Windows如何修改MySQL用户root密码

工具/原料windowsMySQL方法1 ?用SET PASSWORD命令11、打开终端win+r输入cmd回车即可打开;2、通过mysql -u用户名 -p指定root用户登录MySQL,输入后回车会提示输入密码。3、修改MySQL的root用户密码,格式:mysql> set password for 用户名@localhost = password(‘新密码‘); 例子:mysql> set password ...

Mysql5.7忘记root密码怎么办(简单且有效方法)

密码为空)# 选择数据库 use mysql;# 但是在5.7版本中不存在password字段,所有我们要用以下修改进行重置密码update user set authentication_string=password('new password') where user='root';# 刷新权限flush privileges;# 退出mysqlquit;# 将最开始修改的配置文件my.cnf中的skip-grant-tables删除 ...

修改MYSQL密码的几种常用方法总结

­­方法一 ­使用phpmyadmin,这是最简单的了,修改mysql库的user表, ­不过别忘了使用PASSWORD函数。 ­­方法二 ­使用mysqladmin,这是前面声明的一个特例。 ­mysqladmin -u root -p password mypasswd ­输入这个命令后,需要输入root的原密码,然后root的密码...

怎么更改mysql root密码

1 1、打开终端win+r输入cmd回车即可打开;2、通过mysql -u用户名 -p指定root用户登录MySQL,输入后回车会提示输入密码。3、修改MySQL的root用户密码,格式:mysql> set password for 用户名@localhost = password('新密码'); 例子:mysql> set password for root@localhost = password('shapolang');...

怎么改mysql下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 -p...

如何修改mysql root密码

root有密码(123456),则修改密码为654321,执行:mysqladmin -u root -p123456 password 654321 忘记密码修改:使用安全模式启动,配置如下:vi /etc/my.cnf 添加:--skip-grant-tables(修改完密码后去掉或注释掉#重启服务)重新启动MYSQL:service mysqld restart 或者不修改my.cnf直接执行:./bin/...

怎么修改mysql root密码

方法1:用SET PASSWORD命令,具体更新密码步骤如下:c:>mysql -u root mysql>set password for 'root'@'localhost'=password('newpasswd');mysql>set password for 'root'@'%'=password('newpasswd'); //本条可选 通过以上设置,root的密码将变为newpasswd这样就完成了根用户root密码的设置工作。

首页网站运维CentOS下如何修改MySQL的密码CentOS下如

修改root密码CentOS 下 MySQL 管理员帐号默认是 root 用户,密码为空。如果你从没设置过 MySQL 的密码,使用 root 用户来连接 MySQL 服务器不需要输入密码。第一次设置root密码可以使用以下命令:1mysqladmin -u root password NEWPASSWORD如果你已经设置过密码了,需要要以下命令:1mysqladmin -u root ...

Top