`
zpball
  • 浏览: 914609 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

MySQL忘记root口令的解决方法

阅读更多
http://raincoder.iteye.com/blog/1673841

修改口令必须要连接服务器才能修改口令,如果不知道root口令,就只能先强行关停服务器,然后在不适用权限表验证的请款下重新启动服务器。
一、关停服务器
如果是在Linux系统下:
①、以系统的root用户登陆,进入终端;
②、杀掉mysql进程
方法1、killall mysqld
方法2、ps -aux 
查看所有的进程,找到mysql的进程pid,  然后执行命令:
kill pid
(pid是mysql的进程号)

如果服务器受到干扰和对正常终止信号无响应,则可使用kill -9强制终止服务器,命令如下:
kill -9 pid
注意,kill -9是最后不得已的手段,因为内存中可能有未更新的修改,而且有数据表不一致的危险。
  如果使用mysql_safe启动服务器,将会监视该服务器是否异常终止。如果利用kill -9 终止服务器,mysql_safe将会使它立即重启。为了避免这点,要先确定mysqld_safe进程的PID,并在结束mysqld后首先结束该进程。

如果在windows下,即使不知道扣扣了也可以正常关停服务器,可以使用服务管理程序或者使用以下命令:
net stop MySQL
如果正常情况无法关闭,可以使用任务管理器强制终止服务器,这是最后不得已的手段。

二、用---skip_grant_tables选项重新启动服务器,
如果在linux下(windows下基本类似):
/usr/local/mysql/bin/mysqld_safe --skip-grant-tables,
然后执行以下命令进入mysql,
/usr/local/mysql/bin/mysql
接着切换到mysql 数据库,
mysql> USE MYSQL
禁止使用验证链接用的权限表格,因此可以不用口令,二用所有权限进行连接,但是这会让服务器完全开放,其他人也可以以同样的方法链接。因此连接上 后,立即发出FLUSE PRIVILEGES 语句:
mysql> FLUSE PRIVILEGES;
FLUSH告知服务器要重新读取权限表,使用表格进行访问控制。虽然你仍然保持连接,但服务器需要用权限表验证其他客户进行任何连接。FLUSH语句还重新启动SET PASSWORD语句,因为该语句在服务器不用权限表时被禁用。在重新载入该表后,就可以用SET PASSWORD或UPDATE改变root口令,如
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456);

三、在修改root口令之后,关闭服务器并按照正常过程重新启动它,然后就可以使用新的口令以root用户的身份登录了。
分享到:
评论

相关推荐

    [内酷族]教程站-Mysql教程之MYSQL用户root口令为弱口令又一入侵办法- NKZU_com.htm

    [内酷族]教程站-Mysql教程之MYSQL用户root口令为弱口令又一入侵办法- NKZU_com.htm

    mysql弱口令检查方法

    ### MySQL弱口令检查方法详解 #### 一、引言 在网络安全日益受到重视的今天,数据库的安全性显得尤为重要。MySQL作为一款广泛使用的开源关系型数据库管理系统,其安全性更是不容忽视。弱密码作为一种常见的安全...

    如何恢复MYSQL的ROOT口令

    当您不小心忘记MySQL的ROOT口令时,可能会导致无法访问数据库系统。不用担心,恢复MySQL的ROOT口令是一个相对简单的过程,只需遵循几个步骤即可。以下是详细的操作指南: 1. **关闭MySQL服务** 在恢复ROOT口令的第...

    mysql忘记口令的处理办法.txt

    ### MySQL忘记口令的处理办法 在日常使用MySQL数据库的过程中,难免会遇到忘记登录密码的情况。这不仅会影响到数据库管理操作的进行,还可能导致系统服务无法正常运行。本文将详细介绍在Windows与Unix/Linux环境下...

    修改mysql_root密码的各种方法.docx

    使用 GRANT 语句可以修改 ROOT 密码,例如 `mysql -h hostname -u root` 命令登录到 mysqld server,用 GRANT 命令改变口令 `GRANT ALL ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION`。...

    MySQL口令修改_MYSQL服务配置器

    如果你忘记了MySQL root用户的密码或者想要更改它,可以按照以下方法操作: 1. **停止单个MySQL服务**:在Windows系统中,你可以通过服务管理器停止MySQL服务;在Linux系统中,可以使用`sudo service mysql stop`...

    Windows 8.1下MySQL5.7 忘记root 密码的解决方法

    在Windows 8.1环境下,如果你不小心忘记了MySQL 5.7的root用户的密码,不要惊慌,这是一个常见的问题,可以通过一些步骤来解决。下面详细解释如何重置MySQL 5.7的root密码。 首先,我们需要跳过MySQL的权限检查机制...

    MySQL用户和权限及破解root口令的方法示例

    本文将深入探讨MySQL用户和权限的管理,以及如何破解MySQL的root口令。 首先,MySQL中的用户是由用户名和主机名两部分组成的,这样的设计使得可以为不同主机上的同一名用户提供不同的访问权限。例如,创建一个名为`...

    unix-linux各种丢失root密码的恢复方法.pdf

    1. **恢复SCO Unix的Root口令** 当SCO Unix的ROOT密码丢失时,可以使用另一台SCO Unix系统的Root用户创建应急启动盘,包括Boottable和Root filesystem盘。然后在忘记密码的机器上使用该启动盘启动,将硬盘上的/etc/...

    mysql修改密码

    如果忘记了MySQL root用户的密码,可以通过以下步骤重置: - **停止MySQL服务**: ```bash /etc/init.d/mysql stop ``` - **以安全模式启动MySQL**: ```bash mysqld_safe --user=mysql --skip-grant-tables ...

    Linux下mysql的root密码修改方法

    在服务部署在mysql上应该有好几个月了,因为现在的工作基本都在终端,因此很少登陆,今天要修改个东西,忽然发现我竟然已经彻底忘记了mysql的密码,去代码里面爬终于找到了业务数据库的密码,但是root密码还是没有...

    更改Mysql root用户密码

    新下载了mysql,口令为空,如何修改root口令: 首先登陆mysql use mysql; update user set password=password('new_password') where user='root'; flush privileges; 注意需要 flush privileges; 更改Mysql root...

    LINUX下的Mysql数据库安装及使用方法、教程

    ### Linux 下 MySQL 数据库安装及使用方法详解 #### 一、引言 随着信息技术的不断发展,数据库技术在各个行业中扮演着越来越重要的角色。对于 Linux 用户而言,掌握如何在 Linux 系统下安装和使用 MySQL 数据库显得...

    MySQL安全配置详解

    1. 修改 root 用户口令,删除空口令:缺省安装的 MySQL 的 root 用户是空密码的,为了安全起见,必须修改为强密码。 使用 MySQL 自带的命令 mysaladmin 修改 root 密码:`/usr/local/mysql/bin/mysqladmin -u root ...

    MySQL数据库应该如何对抗解密高手

    如果你把一个Unix root用户口令放在mysql.server脚本中,确保这个脚本只能对root是可读的。检查那个运行Mysqld的Unix用户是唯一的在数据库目录下有读/写权限的用户。不要把process权限给所有用户。如果你不信任你的...

    mysql数据库复制

    最近在学习关于mysql的数据库复制方面的东东,搜集了一些资料,整理如下: 1:mysql手动复制数据库技巧 2:MYSQL 复制范例详解 3:MYSQL数据同步备份复制电脑网络 ...6:mysql的root口令忘记了怎么办?

Global site tag (gtag.js) - Google Analytics