今天在学习 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. Java核心知识体系7:线程安全性讨论

    Java核心知识体系1:泛型机制详解 Java核心知识体系2:注解机制详解 Java核心知识体系3:异常机制详解 Java核心知识体系4:AOP原理和切面应用 Java核心知识体系5:反射机制详解 J ...

  2. Android 实现APP可切换多语言

    原文: Android 实现APP可切换多语言 - Stars-One的杂货小窝 如果是单独给app加上国际化,其实很容易,创建对应的国家资源文件夹即可,如values-en,values-pt,ap ...

  3. DES加密技术概述与应用

    一.引言 随着信息技术的飞速发展,数据安全已成为越来越受到重视的问题.数据加密技术作为保障信息安全的核心技术之一,得到了广泛的研究和应用.DES(Data Encryption Standard)作为 ...

  4. MongoDB (操作数据库,操作集合,操作文档)的笔记

    https://www.bilibili.com/video/BV1gV411H7jN/?spm_id_from=333.999.0.0&vd_source=92305fa48ea41cb7b ...

  5. Rong晔大佬教程学习(2):取指

    1.rvseed_defines.v(定义了一些参数,没有实际意义) 该文件定义了一些基本参数,在后续的代码中都会调用该文件 // simulation clock period `define SI ...

  6. 解决swagger2 --> Illegal DefaultValue null for parameter type integer 保存问题

    在pmo.xml中加入两个依赖 <!--增加两个配置--> <dependency> <groupId>io.swagger</groupId> < ...

  7. 【GIT-精讲】从零玩转Git-基础理论

    关于版本控制 一.什么是版本控制 版本控制(Version Control Systems)版本控制(Revision control)是一种软件工程技巧 在开发的过程中,确保由不同人所编辑的同一档案 ...

  8. Python——第二章:列表的概念

    在编程中,列表(List)是一种常用的数据结构,用于存储一组有序的元素.列表是Python中的内置数据类型之一,它允许你在一个变量中存储多个值,并且这些值可以是不同的数据类型,包括整数.浮点数.字符串 ...

  9. Golang实现JAVA虚拟机-指令集和解释器

    原文链接:https://gaoyubo.cn/blogs/f57f32cf.html 前置 Golang实现JAVA虚拟机-解析class文件 Golang实现JAVA虚拟机-运行时数据区 一.字节 ...

  10. macOS 安装 clang-tidy

    先安装 homebrew,网上教程很多,推荐官方教程,此处略过 通过 brew 安装 llvm brew install llvm 创建软连接,指向 homebrew 安装的 clang-tidy m ...