Ubuntu20.04上安装MySQL8.0(绝对保证能够正常使用)
今天在学习 Spark 连接 MySQL时发现还没安装,便参考了厦门大学实验室的Blog进行操作。但安装完成之后发现没有显示设置密码的选择,但又改不掉root密码(头开始痛起来)。
故记录一下安装MySQL并新建账户授权的过程。
方法一
在 MySQL 官网下载安装包
在 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

安装完成后启动 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(绝对保证能够正常使用)的更多相关文章
- [linux]centos7.4上安装MySQL-8.0.11【完美安装】
版本声明 centos7.4 MySQL-8.0.11 1.我用的阿里云的虚拟主机,刚从windows换到linux,需要装下常用工具 #安装下sz rz常用到上传下载的命令 yum install ...
- 在 Ubuntu 12.04 上安装 GitLab6.0
安装环境: 操作系统: Ubuntu 12.4 LTS 英文 数据库: mysql5.5.32 web服务器: nginx1.4.1 首先, 添加git和nginx的ppa,并升级 ...
- centos6上安装mysql8.0版本
本博客是采用yum源的方式安装,非常的方便和快捷.(redhat 与centos7 等操作系统都可以采用此方法,步骤大体一致) mysql官网地址: https://dev.mysql.com 开 ...
- 在Ubuntu 18.04上安装OpenCV 4(C ++和Python)
OpenCV于11月20日发布了OpenCV-3.4.4和OpenCV-4.0.0.这些版本中有很多错误修复和其他更改.发布重点如下: OpenCV现在是C ++ 11库,需要符合C ++ 11标准的 ...
- linux安装mysql8.0
linux 上安装mysql8.0 mysql版本8.0.16 MySQL Community 操作系统centos7 准备工作: mysql8.0 rpm文件 安装步骤: 1. 下载mysql的re ...
- CentOS7.5 上使用 bundle 文件安装 MySQL8.0 MySQL5.0
CentOS7.5 上使用 bundle 文件安装 MySQL8.0 MySQL5.0 CentOS7.5 环境 [root@instance-fjii60o3 ~]# rpm -qi centos- ...
- Ubuntu16.04安装MySQL8.0
1.Ubuntu换源(阿里云) sudo cp /etc/apt/sources.list /etc/apt/sources.list.baksudo vi /etc/apt/sources.list ...
- Centos7安装MySQL8.0 - 操作手册
MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 一. Mysql8.0版本相比之前版本的一些特性 1) ...
- Centos7安装MySQL8.0
请到这个地址看:https://www.cnblogs.com/kevingrace/p/10482469.html Centos7安装MySQL8.0 - 操作手册 一.yum安装方式: 卸载之前版 ...
- wsl2 ubuntu20.04 上使用 kubeadm 创建一个单主集群
wsl2 ubuntu20.04 上使用 kubeadm 创建一个单主集群 官方文档使用 kubeadm 创建一个单主集群 环境初始化 建议尽可能初始化环境,命令wsl --unregister Ub ...
随机推荐
- Java核心知识体系7:线程安全性讨论
Java核心知识体系1:泛型机制详解 Java核心知识体系2:注解机制详解 Java核心知识体系3:异常机制详解 Java核心知识体系4:AOP原理和切面应用 Java核心知识体系5:反射机制详解 J ...
- Android 实现APP可切换多语言
原文: Android 实现APP可切换多语言 - Stars-One的杂货小窝 如果是单独给app加上国际化,其实很容易,创建对应的国家资源文件夹即可,如values-en,values-pt,ap ...
- DES加密技术概述与应用
一.引言 随着信息技术的飞速发展,数据安全已成为越来越受到重视的问题.数据加密技术作为保障信息安全的核心技术之一,得到了广泛的研究和应用.DES(Data Encryption Standard)作为 ...
- MongoDB (操作数据库,操作集合,操作文档)的笔记
https://www.bilibili.com/video/BV1gV411H7jN/?spm_id_from=333.999.0.0&vd_source=92305fa48ea41cb7b ...
- Rong晔大佬教程学习(2):取指
1.rvseed_defines.v(定义了一些参数,没有实际意义) 该文件定义了一些基本参数,在后续的代码中都会调用该文件 // simulation clock period `define SI ...
- 解决swagger2 --> Illegal DefaultValue null for parameter type integer 保存问题
在pmo.xml中加入两个依赖 <!--增加两个配置--> <dependency> <groupId>io.swagger</groupId> < ...
- 【GIT-精讲】从零玩转Git-基础理论
关于版本控制 一.什么是版本控制 版本控制(Version Control Systems)版本控制(Revision control)是一种软件工程技巧 在开发的过程中,确保由不同人所编辑的同一档案 ...
- Python——第二章:列表的概念
在编程中,列表(List)是一种常用的数据结构,用于存储一组有序的元素.列表是Python中的内置数据类型之一,它允许你在一个变量中存储多个值,并且这些值可以是不同的数据类型,包括整数.浮点数.字符串 ...
- Golang实现JAVA虚拟机-指令集和解释器
原文链接:https://gaoyubo.cn/blogs/f57f32cf.html 前置 Golang实现JAVA虚拟机-解析class文件 Golang实现JAVA虚拟机-运行时数据区 一.字节 ...
- macOS 安装 clang-tidy
先安装 homebrew,网上教程很多,推荐官方教程,此处略过 通过 brew 安装 llvm brew install llvm 创建软连接,指向 homebrew 安装的 clang-tidy m ...