最近在ubuntu系统上安装了MySQL,但是安装时没有提示输入root用户密码,在网上找了一天解决方案,试图修改root用户下的登入密码,但是网上的帖子都不凑效,最后终于改成功了,因此记下来以供有同样需要的人参考。

1、安装

$ sudo apt-get install mysql-server

$ apt install mysql-client 

$ apt install libmysqlclient-dev

以此在终端输入上述代码,等待安装。装好后,输入以下代码检查下是否安装成功。

$ sudo netstat -tap | grep mysql 

$ netstat -tap | grep mysql

tcp6        0       0       [::]:mysql    [::]:*    LISTEN    7510/mysqld

如果出现第三行提示,则表明安装成功。

2、登入MySQL

$ mysql -u root -p

输入密码,如果可以进入则下面的不用看了;如果提示不能登入,则我们尝试启用安全模式登入MySQL,这样可以绕过密码登入,登入后再修改密码。

3、安全模式登入MySQL

$ sudo /etc/init.d/mysql stop

-------------------------------------
[sudo] wl 的密码:
[ ok ] Stopping mysql (via systemctl): mysql.service. $ sudo /usr/bin/mysqld_safe --skip-grant-tables --skip-networking &

输入第一行终止MySQL运行,成功,会提示下面两行;输入第四行,成功,没有任何报错则可以另外打开一个终端窗口进行下一步操作;但是一般会报错,比如提示mysqld_safe Directory ‘/var/run/mysqld’ for UNIX socket file don’t exists

因此我们尝试输入以下代码

$ sudo mkdir -p /var/run/mysqld

$ sudo chown mysql:mysql /var/run/mysqld

最后再次输入:

sudo /usr/bin/mysqld_safe --skip-grant-tables --skip-networking &

到了这里不在提示错误,可以打开另一个终端端口了,尝试无密码登入MySQL。

mysql -u root

到这里应该可以进入MySQL了,继续操作

> use mysql;

> update user set authentication_string=PASSWORD("这里输入你要改的密码") where User='root'; #更改密码
> update user set plugin="mysql_native_password"; #如果没这一行可能也会报一个错误,因此需要运行这一行 > flush privileges; #更新所有操作权限
> quit;

4、使用修改的密码登入MySQL

经过上面一系列的操作,应该可以正常使用你更改的密码登入了。

> sudo /etc/init.d/mysql stop
> sudo /etc/init.d/mysql start # reset mysql > mysql -u root -p

第一行先终止数据库运行,第二行重启数据库服务,第三行root用户登入。

ubuntu 16.04系统下解决MySQL 5.7版本的root用户重置密码问题的更多相关文章

  1. [PHP] ubuntu 16.04系统下解决MySQL 5.7版本的root用户重置密码问题

    reference to : http://www.cnblogs.com/roadofstudy/p/7446690.html 最近在ubuntu系统上安装了MySQL,但是安装时没有提示输入roo ...

  2. Ubuntu 16.04系统下解决Vim乱码问题

    方法: 打开终端输入:vim /etc/vim/vimrc,进入编辑模式,加入如下配置: set fileencodings=utf-8,gb2312,gbk,gb18030 set termenco ...

  3. Ubuntu 16.04系统下安装Discuz出现“HTTP ERROR 500”目前无法处理此请求

    问题:当我们在Ubuntu 16.04系统下安装Disucz X3时,修改好文件的权限,浏览器输入地址安装时出现如下图所示问题: 问题查询: 在终端输入: tail -f /var/log/apach ...

  4. Ubuntu 16.04系统下安装PHP5.6*

    Ubuntu 16.04系统默认php7,并没有php5*的包,所以需要自己安装: 方法: 1.删除所有的php包列出安装的php包,dpkg -l | grep php| awk '{print $ ...

  5. Ubuntu 16.04.1下修改MySQL默认编码

    在Ubuntu 下配置 MySQL 的字符编码.安装完 MySQL 后,系统默认的字符编码是 latin1 ,输入的是中文,可是输出却是一堆乱码.现在要做的就是把 MySQL的默认字符编码设置为支持中 ...

  6. Ubuntu 16.04系统下软件中心Software闪退解决办法

    按住Ctrl+Alt+T打开终端输入: sudo apt-get update //更新 sudo apt-get dist-upgrade //升级 sudo apt-get install --r ...

  7. Ubuntu 16.04系统下出现E: 无法下载 http://ppa.launchpad.net/fcitx-team/nightly/ubuntu/dists/xenial/main/binary-amd64/Packages 404 Not Found

    在安装完成Chrome浏览器后,终端执行以下更新命令 sudo apt-get update 时出现E: 无法下载 http://ppa.launchpad.net/fcitx-team/nightl ...

  8. Ubuntu 16.04系统下apt-get和dpkg区别

    两者的区别是dpkg绕过apt包管理数据库对软件包进行操作,所以你用dpkg安装过的软件包用apt可以再安装一遍,系统不知道之前安装过了,将会覆盖之前dpkg的安装.1.dpkg是用来安装.deb文件 ...

  9. Ubuntu 16.04系统下安装RapidSVN版本控制器及配置diff,editor,merge和exploer工具

    在Window下我们使用TortoiseSVN(小乌龟),可以很方便地进行查看.比较.更新.提交.回滚等SVN版本控制操作. 在Linux下我们可以使用RapidSVN.RapidSVN是一款轻量级的 ...

随机推荐

  1. JAVA项目启动正常,无法访问

    若是一般项目web.xml问题  springboot是静态资源问题

  2. Vue之状态管理(vuex)与接口调用

    Vue之状态管理(vuex)与接口调用 一,介绍与需求 1.1,介绍 1,状态管理(vuex) Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态 ...

  3. C# Note37: Writing unit tests with use of mocking

    前言 What's mocking and its benefits Mocking is an integral part of unit testing. Although you can run ...

  4. npm ERR! code ENOENT

    npm ERR! path F:\VsCodeWorkspace\labWeb\front\LabWebAdminFrontEnd\node_modules\core-jsnpm ERR! code ...

  5. kettle查询-2

    模糊匹配: 1.主数据/查询数据 2.模糊匹配 3.输出:jaro/jaro winkler/pair letters similarity(各自算法的匹配度measure value) http c ...

  6. ABP中的拦截器之EntityHistoryInterceptor

    今天我们接着之前的系列接着来写另外一种拦截器EntityHistoryInterceptor,这个拦截器到底是做什么的呢?这个从字面上理解是实体历史?这个到底是什么意思?带着这个问题我们来一步步去分析 ...

  7. jdk安装及配置

    点击jdk文件运行 安装完成后的目录: 2,在系统变量下面配置 JAVA_HOME:你自己的jdk的路径 CLASSPATH= .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME% ...

  8. [模板] 数学基础:快速幂/乘/逆元/exGCD/(ex)CRT/(ex)Lucas定理

    方便复制 快速乘/幂 时间复杂度 \(O(\log n)\). ll nmod; //快速乘 ll qmul(ll a,ll b){ ll l=a*(b>>hb)%nmod*(1ll< ...

  9. Scrapy 框架,爬虫文件相关

    Spiders 介绍 由一系列定义了一个网址或一组网址类如何被爬取的类组成 具体包括如何执行爬取任务并且如何从页面中提取结构化的数据. 简单来说就是帮助你爬取数据的地方 内部行为 #1.生成初始的Re ...

  10. 用expect实现SCP/SSH自动输入密码登录

    在命令行ssh远程登录服务器和scp远程传输文件都需要交互式输入密码,无法像mysql登录数据库 mysql -uroot -p123456一样直接完成. 其实可以用脚本依赖expect来达到这一目的 ...