1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 详细介绍Linux下mysql的root密码修改方法的示例代码

详细介绍Linux下mysql的root密码修改方法的示例代码

时间:2022-05-25 02:55:06

相关推荐

详细介绍Linux下mysql的root密码修改方法的示例代码

数据库|mysql教程

Linux,mysql,root

数据库-mysql教程

mysql是我们经常在linux或者windows需要用的一种数据库,相信每位程序员们对mysql应该都再熟悉不过了,但是有时大脑短路,突然忘记mysql的超级用户root的密码,这个时候就要修改个新的密码了,下面这篇文章就介绍了Linux下mysql的root密码修改方法,一起来看看吧。

成都源码黑科技有限公司,vscode改为中文版,ubuntu 换pip,tomcat和微服务,scrapy爬虫搜索,php 文件上传功能,南平市seo优化厂家,下载好的网站源码怎么上传,精仿想去网模板lzw

前言

html5简易单页源码,vscode 编译so库,ubuntu 终端 光标,nodejs调用tomcat,sqlite百度下载,爬虫爬数据会被判刑吗,php 金额格式,中堂seo优化推广,网站定制5iweb,在网页上实现跟随鼠标移动的图片,手机网站页面模板lzw

在服务部署在mysql上应该有好几个月了,因为现在的工作基本都在终端,因此很少登陆,今天要修改个东西,忽然发现我竟然已经彻底忘记了mysql的密码,去代码里面爬终于找到了业务数据库的密码,但是root密码还是没有找到,权限没法改呀,于是开始爬坑之旅,估计以后还会遇到,就整理记录一下。需要的朋友们一起来看看吧。

qq自动登录工具源码,ubuntu 选择内核启动,tomcat容器与服务器,木头缝里爬虫,php面向对象编程接口,佛山seo接单lzw

系统参数

服务器

$ cat /proc/version Linux version 4.8.3-x86_64-linode76 (maker@build) (gcc version 4.7.2 (Debian 4.7.2-5) ) #1 SMP Thu Oct 20 19:05:39 EDT $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04.1 LTS Release: 16.04 Codename: xenial

mysql

mysql> show variables like "%version%"; +-------------------------+-------------------------+ | Variable_name | Value | +-------------------------+-------------------------+ | innodb_version | 5.7.16 | | protocol_version | 10 | | slave_type_conversions | | | tls_version | TLSv1,TLSv1.1 | | version | 5.7.16-0ubuntu0.16.04.1 | | version_comment | (Ubuntu) | | version_compile_machine | x86_64 | | version_compile_os | Linux | +-------------------------+-------------------------+

解决方案

以安全模式启动mysql,可以直接以root身份登录,然后重设密码。下面是具体步骤

停掉在运行的MySQL服务:

sudo service mysql stop

以安全模式启动mysql:

sudo mysqld_safe --skip-grant-tables --skip-networking &

直接用root登录,无需密码:

mysql -u root

重设密码:

mysql> use mysql; mysql> update user set authentication_string=password(password) where user= oot; mysql> flush privileges;

退出mysql

mysql > quit

重启mysql

sudo service mysql restart

密码登录:

mysql -u root -p

异常处理

修改密码报错,提示ERROR 1054 (42S22)

在修改密码的时候,网上比较多的文档都是提示输入一下命令修改:

mysql> update user set password=PASSWORD("password") where User= oot;

结果使用这个命令的时候报错:

ERROR 1054 (42S22): Unknown column password in field list

原因是从mysql 5.7开始,password字段被替换为了authentication_string,可以使用下面的命令来修改

update user set authentication_string=password(password) where user= oot;

修改密码后登录mysql失败,提示ERROR 2002 (HY000)

在修改密码并重启以后,登录mysql的时候竟然登录不了,提示

ERROR 2002 (HY000): Can connect to local MySQL server through socket /var/run/mysqld/mysqld.sock (2)

搜索以后反馈是因为我安装了多个版本的mysql,顺序执行下面的命令即可解决。

查看运行的mysql

ps -A|grep mysql

kill运行的mysql

sudo pkill mysql

查看运行的mysqld

ps -A|grep mysqld

kill运行的mysqld

sudo pkill mysqld

重启mysql

service mysql restart

登录mysql

mysql -u root -p

总结

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。