MySql登陆密码忘记-解决方案

方法一:MySQL提供跳过访问控制的命令行参数,通过在命令行以此命令启动MySQL服务器: safe_mysqld --skip-grant-tables& 即可跳过MySQL的访问控制,任何人都可以在控制台以管理员的身份进入MySQL数据库。 需要注意的是在修改完密码以后要把MySQL服务器停掉重新启动才会生效

方法二:可以进行如下的步骤重新设置MySQL的root密码: 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对 外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全 状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。 2.修改MySQL的登录设置: # vi /etc/my.cnf 在[mysqld]的段中加上一句:skip-grant-tables 例如: [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock skip-name-resolve skip-grant-tables 保存并且退出vi。 

3.重新启动mysqld # /etc/init.d/mysqld restart Stopping MySQL: [ OK ] Starting MySQL: [ OK ] 4.登录并修改MySQL的root密码 

# /usr/bin/mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 3.23.56 Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer. 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 mysql> UPDATE user SET Password = password ( ‘new-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.01 sec) mysql> quit Bye 5.将MySQL的登录设置修改回来 # vi /etc/my.cnf 将刚才在[mysqld]的段中加上的skip-grant-tables删除 保存并且退出vi。 6.重新启动mysqld # /etc/init.d/mysqld restart Stopping MySQL: [ OK ] Starting MySQL: [ OK ] windows 1.以系统管理员身份登陆系统。   2.打开cmd—–net start 查看mysql是否启动。启动的话就停止net stop mysql.   3.我的mysql安装在d:\usr\local\mysql4\bin下。   4.跳过权限检查启动mysql.   d:\usr\local\mysql4\bin\mysqld-nt –skip-grant-tables   5.重新打开cmd。进到d:\usr\local\mysql4\bin下:   d:\usr\local\mysql4\bin\mysqladmin -uroot flush-privileges password “newpassword”   d:\usr\local\mysql4\bin\mysqladmin -u root -p shutdown 这句提示你重新输密码。   6.在cmd里net start mysql   7.搞定了。 2,MySQL4.1以上版本一种密码错误问题的解决方法 1 # SET PASSWORD FOR ’some_user’@’some_host’ = OLD_PASSWORD(‘newpwd’);   2 # FLUSH PRIVILEGES;  3,Mysql数据库修复 myisamchk -r -q d:\mysql\data\latin1\* r代表修复 q代表快速 d:\mysql\data\latin1\*数据库里面 *代表里面的所有的文件  

方法三:如果你忘记了你的MYSQL的root口令的话,你可以通过下面的过程恢复。  1. 向mysqld server 发送kill命令关掉mysqld server(不是 kill -9),存放进程ID的文件通常在MYSQL的数据库所在的目录中。      kill `cat /mysql-data-directory/hostname.pid`     你必须是UNIX的root用户或者是你所运行的SERVER上的同等用户,才能执行这个操作。  2. 使用`--skip-grant-tables‘ 参数来启动 mysqld。  3. 使用`mysql -h hostname mysql‘命令登录到mysqld server ,用grant命令改变口令。你也可以这样做:`mysqladmin -h hostname -u user password ‘new password‘‘。(其实也可以用use mysql; update user set password =password(‘yourpass‘) where user=‘root‘ 来做到。)  4. 载入权限表: `mysqladmin -h hostname flush-privileges‘ ,或者使用 SQL 命令`FLUSH PRIVILEGES‘。(当然,在这里,你也可以重启mysqld。)

方法四:(一定要先备份)1,重新在另一台电脑上安装相同版本的MySQL2,删除忘记密码的电脑中MySQL安装目录中\data\mysql的全部内容(要先停止MySQL服务)3,Copy新装的电脑上MySQL安装目录中\data\mysql的全部内容 to 刚刚删除的目录中4,启动MySQL服务

这样就只有一个root用户了,密码为空……
时间: 2024-08-11 07:43:35

MySql登陆密码忘记-解决方案的相关文章

mysql root密码忘记重置

1.修改/etc/my.cnf文件 找到mysqld选项,增加子项skip-grant-tables 2.重新启动mysql服务 service mysqld restart 3.进入mysql 在shell中执行mysql -u root 4.设置root新密码 update mysql.user set password=password('newpassword') where user='root'; flush privileges; 5.删除步骤1中进行的操作. 6.再次执行步骤2.

mysql登录密码忘记的解决办法

mysql登录密码忘记,其实解决办法很简单,只需要在mysql的主配置文件my.cnf里添加一行"跳过授权表"的参数选择即可! 在my.cnf中添加下面一行:[[email protected] ~]# vim /etc/my.cnf........skip-grant-tables                       //跳过授权表 然后重启mysql服务,即可无密码登录[[email protected] ~]# /etc/init.d/mysqld restart 登录后

Centos7 之 MariaDB(Mysql) root密码忘记的解决办法

MariaDB(Mysql) root密码忘记的解决办法 1.首先先关闭mariadb数据库的服务 # 关闭mariadb服务命令(mysql的话命令就是将mariadb换成mysql) [[email protected] ~]# systemctl stop mariadb # 通过进行查询服务或者通过端口查询服务还是否存在 [[email protected] ~]# ps aux|grep mariadb root       6852  0.0  0.0 112704   964 pt

mysql root密码忘记的解决方案(windows环境)

密码多了,有时连自己都忘了.本文是解决windows环境下,忘记mysql数据库root密码的解决方案. 1. 首先检查mysql服务是否启动,若已启动则先将其停止服务.可在cmd窗口,使用命令:net stop mysql   2. 在cmd窗口切换到mysql安装目录的bin目录下,运行命令: mysqld --defaults-file="D:\app\MySQL\MySQLServer5.5\my.ini" --console --skip-grant-tables 上行命令解

夺命雷公狗---linux NO:35 linux下的mysql密码忘记解决方案

如果密码忘记了,我们直接来杀掉进程.. 这是一个典型密码错误的报错.. 那么我们直接使用pkill来干掉他的进程.. 然后来检查检查: 已经成功的干掉了.然后就开始 启动mysql: ./mysqld --skip-grant-table 回车如下所示: 别ctrl + c  噢,否则他会被关掉的.直接从新打开多一个窗口,如下所示: 直接启动mysql即不用密码就进来了... use mysql 数据库,修改 users 表, authencation_string 字段. 然后在里面寻找到 u

centos root登陆密码 忘记解决办法

Centos系统 登陆root忘记密码 解决方案: (1)开机启动系统,在进入linux系统之前按键Esc 进入如下界面:(需要注意:Centos是安装在虚拟机里面的话,需要将鼠标点进去 在按键Esc 否则还是会进入linux系统). (2)之后选中 按下e键,出现如下界面: (3)如图,选中第二项,再次按下e键,出现如下界面: (4)在此基础上,输入一个空格 和一个数字1:如下 (5)回车 出现如下界面: (6)光标定位在第二项,按下键盘b键,系统需要自启动,等待.... 之后出现而下界面:

mac上mysql root密码忘记或权限错误的解决办法

以下方法亲测有效,过程使用的工具只有mac的终端无需workbench; 当我们通过终端连接mysql数据库时候我们会看到这样的信息: ERROR 1045: Access denied for user: '[email protected]' (Using password: NO) 或者 ERROR 1045: Access denied for user: '[email protected]' (Using password: YES) 解决上面错误的方法之一就是重新设置我们的mysq

Linux Mysql root密码忘记,初始化

前段时间一个测试环境的mysql数据库的root密码找不到了,一个不重要的库,安装人员估计疏忽了...手动把密码恢复了一下.记录下来做个备注 1.进入my.cnf ,在[mysqld]字段中添加   skip-grant-tables 2.重启mysql服务   service mysqld restart 3.无密码进入mysql修改密码 mysql -uroot -p mysql > update mysql.user set PASSWORD=password('new password'

mysql密码忘记解决方案

方法:在忘记root密码的时候,可以这样 以windows为例: 1. 关闭正在运行的MySQL服务. 2. 打开DOS窗口,转到mysql\bin目录. 3. 输入mysqld --skip-grant-tables 回车.--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证. 4. 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录. 5. 输入mysql回车,如果成功,将出现MySQL提示符 >. 6. 连接权限数据库: