在ubuntu中重置mysql服务器root密码的方法

 更新时间:2012年10月12日 01:12:33   作者:  
在ubuntu下安装了mysql 5 server,结果不知道什么原因,安装时输入的root帐号密码在使用时无论如何都不能通过数据库服务器的验证。无奈只有重置mysql的root帐号密码。查了一下,用了以下方法成功的重置了root帐号密码
首先停止mysql服务:
复制代码 代码如下:

root@webserver:/home/webmaster# service mysql stop

接着采用忽略密码认证模式重新创建一个mysql服务:
复制代码 代码如下:

root@webserver:/home/webmaster# mysqld --user=mysql --skip-grant-tables --skip-networking &

成功启动后返回PID及其它启动信息
复制代码 代码如下:

[1] 3591
root@webserver:/home/webmaster# 121005 2:59:27 [Note] Plugin 'FEDERATED' is disabled.
121005 2:59:27 InnoDB: The InnoDB memory heap is disabled
121005 2:59:27 InnoDB: Mutexes and rw_locks use GCC atomic builtins
121005 2:59:27 InnoDB: Compressed tables use zlib 1.2.3.4
121005 2:59:27 InnoDB: Initializing buffer pool, size = 128.0M
121005 2:59:27 InnoDB: Completed initialization of buffer pool
121005 2:59:27 InnoDB: highest supported file format is Barracuda.
121005 2:59:27 InnoDB: Waiting for the background threads to start
121005 2:59:28 InnoDB: 1.1.8 started; log sequence number 1595685
121005 2:59:28 [Note] mysqld: ready for connections.
Version: '5.5.24-0ubuntu0.12.04.1' socket: '/var/run/mysqld/mysqld.sock' port: 0 (Ubuntu)

连接到mysql系统库:
复制代码 代码如下:

root@webserver:/home/webmaster# mysql -u root mysql

连接到mysql库后直接修改root帐号的密码为新的密码'mynewpasswd':
复制代码 代码如下:

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> update user set Password=PASSWORD('mynewpasswd') where user='root';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0

mysql> FLUSH PRIVILEGES;
mysql> quit;
Bye

中止mysql服务进程(PID 3591见前面启动服务时的屏幕信息):
复制代码 代码如下:

root@webserver:/home/webmaster# kill 3591

正常启动 mysql服务,并用新密码登录mysql服务器成功:
复制代码 代码如下:

root@webserver:/home/webmaster#service mysql start
root@webserver:/home/webmaster#mysql -u root -pmynewpasswd

相关文章

  • MySQL里的反斜杠(\\)的使用

    MySQL里的反斜杠(\\)的使用

    本文主要介绍了MySQL里的反斜杠(\\)的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Mysql中的嵌套子查询问题

    Mysql中的嵌套子查询问题

    这篇文章主要介绍了Mysql嵌套子查询,子查询就是指的在一个完整的查询语句之中,嵌套若干个不同功能的小查询,从而一起完成复杂查询的一种编写形式,为了让读者更加清楚子查询的概念,感兴趣的朋友跟随小编一起看看吧
    2022-01-01
  • MySQL 行锁和表锁的含义及区别详解

    MySQL 行锁和表锁的含义及区别详解

    这篇文章主要介绍了MySQL 行锁和表锁的含义及区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • MySQL出现2003错误的三种解决方法

    MySQL出现2003错误的三种解决方法

    本文主要介绍了MySQL出现2003错误的解决方法,主要介绍了3种方法,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • mysql中使用sphinx搜索子域名需注意的问题

    mysql中使用sphinx搜索子域名需注意的问题

    比如搜索jb51.net会把www.jb51.net、jb51.net、sc.jb51.net等都搜索出来
    2013-02-02
  • MySQL自动填充create_time和update_time的两种方式

    MySQL自动填充create_time和update_time的两种方式

    当我们创建业务表的时候 通常都需要设置create_time 和 update_time,下面这篇文章主要给大家介绍了关于MySQL自动填充createTime和updateTime的两种方式,需要的朋友可以参考下
    2022-05-05
  • mysql8.0.0 winx64.zip解压版安装配置教程

    mysql8.0.0 winx64.zip解压版安装配置教程

    这篇文章主要为大家详细介绍了mysql8.0.0 winx64.zip解压版安装配置教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • 详解mysql表数据压缩

    详解mysql表数据压缩

    mysql进行压缩是借助于zlib库,采用L777压缩算法,这种算法在减少数据大小、CPU利用方面是成熟的、健壮的、高效的,这篇文章主要介绍了mysql表数据压缩,需要的朋友可以参考下
    2022-01-01
  • MySQL中表分区技术详细解析

    MySQL中表分区技术详细解析

    数据库分区是一种物理数据库设计技术。虽然分区技术可以实现很多效果,但其主要目的是为了在特定的SQL操作中减少数据读写的总量以缩减sql语句的响应时间,同时对于应用来说分区完全是透明的。
    2016-06-06
  • 使用MySQL MySqldump命令导出数据时的注意事项

    使用MySQL MySqldump命令导出数据时的注意事项

    这篇文章主要介绍了使用MySQL MySqldump命令导出数据时的注意事项,很实用的经验总结,需要的朋友可以参考下
    2014-07-07

最新评论