今天在学习 Spark 连接 MySQL时发现还没安装,便参考了厦门大学实验室的Blog进行操作。但安装完成之后发现没有显示设置密码的选择,但又改不掉root密码(头开始痛起来)。

故记录一下安装MySQL并新建账户授权的过程。

方法一

  1. 在 MySQL 官网下载安装包

    https://dev.mysql.com/downloads/repo/apt/

  2. 在 Ubuntu 中使用终端命令进行解压

    # 输入命令, dpkg 是解压的意思,最后的参数是安装包名称,一定要写对
    sudo dpkg -i 安装包(不能出错)

    解压显示的 GUI 页面直接选择 OK 后 <确定>

    # 输入命令为 如果显示 Yes/No 填Y
    sudo apt update
    sudo apt upgrade
    # 这里填完 Y 之后会经过比较长的下载时间,大概 30 分钟后进行 GUI 页面
    sudo apt install mysql-community-server

  3. 安装完成后启动 MySQL 服务并登录 Root 用户

    # 启动和关闭mysql服务器
    service mysql start
    service mysql stop

    确认是否启动成功,MYSQL 节点处于LISTEN状态表示启动成功 (重要),MySQL 8.X 这里会显示两条信息

    进入MySQL Shell界面:这里会要求输入 MySQL Root 用户密码

方法二(无法设置 Root 密码)

Ubuntu在20.04版本中,源仓库中MySQL的默认版本已经更新到8.0。可以直接使用apt安装。

apt 安装MySQL

sudo apt-get update  #更新源
sudo apt-get install mysql-server #安装 sudo apt install net-tools

MySQL服务管理

sudo service mysql status # 查看服务状态
sudo service mysql start # 启动服务
sudo service mysql stop # 停止服务
sudo service mysql restart # 重启服务

登录

查看密码使用这条查看

sudo cat /etc/mysql/debian.cnf

使用默认账户登录

mysql -u debian-sys-maint -p

或直接进入 Mysql

sudo mysql

找不到初始密码可以在my.ini中 [mysqld] 添加:skip-grant-tables

创建新用户

因为方法二尝试修改了root账户的密码似乎不起作用,于是创建一个新的账户来作为日常使用

新建账户

新建一个root用户,密码为root

create user 'root'@'%' identified by 'root';

授权

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

修改MySQL数据库配置文件无密码登录后,修改密码报错为以下

ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

则需先执行:FLUSH PRIVILEGES; 后再执行修改密码命令即可。

重置密码

重置root账户密码为 password

SET PASSWORD FOR root@'localhost' = PASSWORD('password');

或者执行

SET PASSWORD FOR root@'localhost' = 'password';

卸载MySQL

sudo apt purge mysql-*
sudo rm -rf /etc/mysql/ /var/lib/mysql
sudo apt autoremove
sudo apt autoclean

注意如果要卸载需要卸载干净!避免影响以后的重新安装

参考文章:

Ubuntu20.04上安装MySQL8.0(绝对保证能够正常使用)的更多相关文章

  1. [linux]centos7.4上安装MySQL-8.0.11【完美安装】

    版本声明 centos7.4 MySQL-8.0.11 1.我用的阿里云的虚拟主机,刚从windows换到linux,需要装下常用工具 #安装下sz rz常用到上传下载的命令 yum install ...

  2. 在 Ubuntu 12.04 上安装 GitLab6.0

    安装环境: 操作系统:    Ubuntu 12.4 LTS 英文 数据库:        mysql5.5.32 web服务器: nginx1.4.1 首先, 添加git和nginx的ppa,并升级 ...

  3. centos6上安装mysql8.0版本

    本博客是采用yum源的方式安装,非常的方便和快捷.(redhat 与centos7 等操作系统都可以采用此方法,步骤大体一致) mysql官网地址:   https://dev.mysql.com 开 ...

  4. 在Ubuntu 18.04上安装OpenCV 4(C ++和Python)

    OpenCV于11月20日发布了OpenCV-3.4.4和OpenCV-4.0.0.这些版本中有很多错误修复和其他更改.发布重点如下: OpenCV现在是C ++ 11库,需要符合C ++ 11标准的 ...

  5. linux安装mysql8.0

    linux 上安装mysql8.0 mysql版本8.0.16 MySQL Community 操作系统centos7 准备工作: mysql8.0 rpm文件 安装步骤: 1. 下载mysql的re ...

  6. CentOS7.5 上使用 bundle 文件安装 MySQL8.0 MySQL5.0

    CentOS7.5 上使用 bundle 文件安装 MySQL8.0 MySQL5.0 CentOS7.5 环境 [root@instance-fjii60o3 ~]# rpm -qi centos- ...

  7. Ubuntu16.04安装MySQL8.0

    1.Ubuntu换源(阿里云) sudo cp /etc/apt/sources.list /etc/apt/sources.list.baksudo vi /etc/apt/sources.list ...

  8. Centos7安装MySQL8.0 - 操作手册

    MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 一.  Mysql8.0版本相比之前版本的一些特性 1) ...

  9. Centos7安装MySQL8.0

    请到这个地址看:https://www.cnblogs.com/kevingrace/p/10482469.html Centos7安装MySQL8.0 - 操作手册 一.yum安装方式: 卸载之前版 ...

  10. wsl2 ubuntu20.04 上使用 kubeadm 创建一个单主集群

    wsl2 ubuntu20.04 上使用 kubeadm 创建一个单主集群 官方文档使用 kubeadm 创建一个单主集群 环境初始化 建议尽可能初始化环境,命令wsl --unregister Ub ...

随机推荐

  1. MySQL-管理员root@'locahost' 丢失,怎么处理?

    版权声明:原创作品,谢绝转载!否则将追究法律责任. ----- 作者:kirin 跳过授权表 ----> 不开启验证功能(无密码登录) --skip-grant-tables 阻止所有tcp/i ...

  2. HarmonyOS 开发入门(二)

    HarmonyOS 开发入门(二) 日常逼逼叨 在HarmonyOS 开发入门(一)中我们描述了 HarmonyOS 开发的语言ArKTs以及Ts简单的入门级语法操作,接下来我们进入第二部分Harmo ...

  3. js 通过id、pid遍历集合获得树结构

    原数据 let adreeJson = [ {id: 1, name: '陕西省', pid: 0}, {id: 2, name: '山西省', pid: 0}, {id: 3, name: '广东省 ...

  4. 用友NCC产品API使用指南

    轻易云用友NCC产品API集成专题 open api简介 Open API即开放API,也称开放平台. 所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成 ...

  5. Unicode编码解码

    一.Unicode概述 Unicode是一种字符编码标准,旨在解决不同字符集之间的兼容性问题.它为全球所有语言提供了一种统一的编码方式,使得各种字符能够在计算机系统中正确显示和处理.Unicode字符 ...

  6. [ABC311G] One More Grid Task

    Problem Statement There is an $N \times M$ grid, where the square at the $i$-th row from the top and ...

  7. [ABC267G] Increasing K Times

    Problem Statement You are given an integer sequence $A = (A_1, \dots, A_N)$ of length $N$. Find the ...

  8. liunx系统登录有趣界面图案

    # vim /etc/motd .::::. .::::::::. ::::::::::: ..:::::::::::' '::::::::::::' .:::::::::: '::::::::::: ...

  9. C#_Win32_PInvoke源码生成器

    介绍 一个源代码生成器,用于向 C#项目添加一组用户定义的 Win32 P/Invoke 方法和相关的类型. 链接地址: https://github.com/microsoft/CsWin32 还在 ...

  10. Vue重用组件

    1.是什么? 这里主要是简单入门使用一下,复杂高阶的用法笔者暂时还没了解到 Vue重用组件是指可以被多个Vue实例重复使用的组件.这些组件可以包含自定义的状态和事件处理程序,并且可以在整个应用程序中共 ...