Linux(CentOS7)下rpm安装MySQL8.0.16
记录一下自己在 CentOS7 下 rpm 安装 MySQL8.0.16 的过程。
一、准备工作
1. 下载MySQL所需要的安装包
从 MySQL官网 下载,上传至 CentOS 系统 /usr/local/MySQL 目录下,当然你也可以使用 wget 命令直接下载至 CentOS,此处使用的 8.0.16 版本。
# 你想要的版本
Product Version: 8.0.16
# CentOS选择Red Hat Enterprise Linux / Oracle Linux
Operating System:OS Version: Red Hat Enterprise Linux / Oracle Linux
# CentOS7 64位选择
OS Version: Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86, 64-bit)
然后下载rpm包(RPM Bundle)。
2. 检查是否存在自带mariadb
CentOS7 开始不自带 MySQL,替换成了 mariadb,但是我们安装 MySQL 的时候会冲突,所以需要先卸载 mariadb。
# 查找是否存在自带mariadb
rpm -qa | grep mariadb
# 如果存在则卸载, 比如我查找出来的名称为mariadb-libs-5.5.60-1.el7_5.x86_64
rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 --nodeps
3. 检查是否安装过MySQL
# 检查是否安装过mysql
rpm -qa | grep mysql
# 如果存在则卸载, 比如名称为mysql-libs-5.1.52.x86_64
rpm -e mysql-libs-5.1.52.x86_64 --nodeps
4. 检查mysql组及用户是否存在,不存在则创建
# 检查
cat /etc/group | grep mysql
cat /etc/passwd | grep mysql
# 创建
groupadd mysql
useradd -r -g mysql mysql
5. 检查是否开启MySQL使用端口
我使用的默认端口3306。
# 查看想开的端口是否已开,若此提示FirewallD is not running, 表示为不可知的防火墙 需要查看状态并开启防火墙, 如果是云服务器还需要去控制台配置安全组访问
firewall-cmd --query-port=3306/tcp
# 开启端口, success代表成功
firewall-cmd --add-port=3306/tcp --permanent
# 刷新配置, 使配置生效
firewall-cmd --reload
二、安装及配置MySQL
1. 解压
cd /usr/local/mysql
# 解压
tar -xvf mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar
# 查看一下解压出来的文件
ll
#结果
-rw-r--r--. 1 7155 31415 33432660 5月 3 2019 mysql-community-client-8.0.16-2.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 588520 5月 3 2019 mysql-community-common-8.0.16-2.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 5712552 5月 3 2019 mysql-community-devel-8.0.16-2.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 24493344 5月 3 2019 mysql-community-embedded-compat-8.0.16-2.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 3127296 5月 3 2019 mysql-community-libs-8.0.16-2.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 2177156 5月 3 2019 mysql-community-libs-compat-8.0.16-2.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 422672748 5月 3 2019 mysql-community-server-8.0.16-2.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 114848996 5月 3 2019 mysql-community-test-8.0.16-2.el7.x86_64.rpm
2. 通过rpm命令安装common
# 命令
rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm
# 打印内容
警告:mysql-community-common-8.0.16-2.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-common-8.0.16-2.e################################# [100%]
3. 通过rpm命令安装libs
# 命令
rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm
# 打印内容
警告:mysql-community-libs-8.0.16-2.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-libs-8.0.16-2.el7################################# [100%]
4. 通过rpm命令安装client
# 命令
rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm
# 打印内容
警告:mysql-community-client-8.0.16-2.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-client-8.0.16-2.e################################# [100%]
5. 通过rpm命令安装server
如果这里提示缺少net-tool依赖,那么 yum -y install net-tools* 安装再执行
# 命令
rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm
# 打印内容
警告:mysql-community-server-8.0.16-2.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-server-8.0.16-2.e################################# [100%]
6. 查看MySQL安装包
# 命令
rpm -qa | grep mysql
# 打印内容
mysql-community-libs-8.0.16-2.el7.x86_64
mysql-community-common-8.0.16-2.el7.x86_64
mysql-community-client-8.0.16-2.el7.x86_64
mysql-community-server-8.0.16-2.el7.x86_64
7. 初始化MySQL数据库
该命令会在 /var/log/mysqld.log 生成随机密码。
mysqld --initialize
8. 配置用户组
配置MySQL数据库目录所属的用户和组,默认MySQL的配置文件路径为: /etc/my.cnf,如果有需要可以修改配置文件。
chown mysql:mysql /var/lib/mysql -R
9. 启动MySQL数据库
# 启动mysqld.service
systemctl start mysqld
# 查看状态, 显示有 running 代表启动成功
systemctl status mysqld
10. 修改数据库密码
# 查看数据库密码
cat /var/log/mysqld.log | grep password
# 打印内容, 其中4M4pSDfcr=9o就是数据库密码
2020-04-03T14:34:28.837144Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 4M4pSDfcr=9o
# 使用查询到的密码登录MySQL
mysql -u root -p'4M4pSDfcr=9o'
# 登录到MySQL之后修改密码为自定义密码(我设置为123456), 这个设置还和5.7版本不同呢
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
# 使用`exit;`退出MySQL后使用自定义密码重新登录
11. 创建用户并授权远程登录
此处不能使用 5.7 版本的方式,不然会报错。
mysql> GRANT ALL PRIVILEGES ON *.* TO 'SunnyBear'@'%' IDENTIFIED BY '123456';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY '123456'' at line 1
8.0版本需要使用如下方式,和 Oralce 的创建授权类似,先创建用户再赋予权限。
因为正常开发一般 root 用户不允许远程登录,所以我们创建一个 SunnyBear 用户,赋予使用 sunny 数据库(已经使用命令创建好)的权限。
# 先创建一个用户
mysql> CREATE USER 'SunnyBear'@'%' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.00 sec)
# 授权
# 其中sunny.*代表赋予sunny数据库所有操作权限, 如果想赋予所有数据库权限, 可设置为*.*
# 其中'SunnyBear'@'%'代表允许SunnyBear用户在任何ip登录, 当然也可以指定ip, 例如'用户名称'@'ip地址'
mysql> GRANT ALL PRIVILEGES ON sunny.* TO 'SunnyBear'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
# 刷新权限
FLUSH PRIVILEGES;
配置成功之后可以使用连接工具尝试连接,我这里使用的是 Navicat,至此,单机版 MySQL 安装配置完成。
12. 一些命令
# 启动mysql服务
systemctl start mysqld.service
# 停止mysql服务
systemctl stop mysqld.service
# 重启mysql服务
systemctl restart mysqld.service
# 查看mysql服务当前状态
systemctl status mysqld.service
# 设置mysql服务开机自启动
systemctl enable mysqld.service
# 停止mysql服务开机自启动
systemctl disable mysqld.service
都读到这里了,来个 点赞、评论、关注、收藏 吧!
文章作者:IT王小二
首发地址:https://www.itwxe.com/posts/79382061/
版权声明:文章内容遵循 署名-非商业性使用-禁止演绎 4.0 国际 进行许可,转载请在文章页面明显位置给出作者与原文链接。
Linux(CentOS7)下rpm安装MySQL8.0.16的更多相关文章
- [linux]centos7.4上安装MySQL-8.0.11【完美安装】
版本声明 centos7.4 MySQL-8.0.11 1.我用的阿里云的虚拟主机,刚从windows换到linux,需要装下常用工具 #安装下sz rz常用到上传下载的命令 yum install ...
- [Linux]centOS7下RPM安装Perl
1.下载rpm依赖包,依照顺序安装. perl-parent-0.225-244.el7.noarch perl-HTTP-Tiny-0.033-3.el7.noarch perl-podla ...
- Linux(CentOS7)下二进制安装MySQL5.7.26
记录一下自己在 CentOS7 下二进制安装 MySQL5.7.26 的过程,之前使用 Linux(CentOS7)下rpm安装MySQL8.0.16 之后发现 rpm 方式安装不利于维护,也不利于单 ...
- linux使用glibc版本安装mysql8.0.12
1.前言 使用yum安装虽然很方便,但是如果要是在没有公网的环境下,是没有办法使用yum源的.所以我们可以使用mysql提供的glibc版本的安装包,进行安装. 但是在安装之前,一定要将以前的版本删除 ...
- Linux(CentOS7)下Nginx安装
记录一下 Linux(CentOS7) 下 Nginx 安装过程 一.准备工作 版本说明: Linux版本:CentOS 7 64位 Nginx版本:nginx-1.20.0 1. 下载安装文件 采用 ...
- centos7下编译安装php-7.0.15(PHP-FPM)
centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...
- CentOS7下编译安装redis-5.0.9
CentOS7下编译安装redis-5.0.9 本文地址http://yangjianyong.cn/?p=171转载无需经过作者本人授权 下载redis #code start wget https ...
- Linux Centos7.2 编译安装PHP7.0.2
操作环境: 1.系统:Centos7.2 2.服务:Nginx 1.下载PHP7.0.2的安装包解压,编译,安装: $ cd /usr/src/ $ wget http://cn2.php.net/d ...
- Linux(CentOS-8)安装MySQL8.0.11
CentOS安装MySQL8.0.11 总的思路就是:安装MySQL,编写配置文件,配置环境变量,成功开启服务,登陆并修改ROOT密码 开启远程访问的思路就是:授权用户所有IP都可以访问,系统的数据库 ...
随机推荐
- 如何识别自己基因组数据是哪个全基因组参考版本(Genome Reference Versions/ Genome Build)
首先在这里先感谢我们[Bio生信学习交流群]的群友和创建此群的群主[陈博士后]. 今天解决的问题是怎么查看自己的基因组数据是哪个Genome Reference Versions. 步骤: 第一步,打 ...
- Flowable中的Service
前言 在学习博客[(https://blog.csdn.net/puhaiyang/article/details/79845248)]时,注意到Flowable中的各种Service(如下),进而在 ...
- Java程序设计基础第4章习题与自总
怎么说呢?不论什么编程题,都有很多种方法解决问题,最后能解决我们所提出的问题才是关键的东西,也是未来成为工程师所需要的能力.解决问题是关键, 当我们做好了问题解决的关键途径的时候,如果有着profou ...
- web前端的超神之路
前端超神之路 前端基础知识 HTML :用户实现页面的工具 CSS:用于美化界面的工具 javascript:用于操作html元素和css样式,让你的页面效果更美观 前端进阶知识 jQuery:用于简 ...
- 爬虫框架-scrapy的使用
Scrapy Scrapy是纯python实现的一个为了爬取网站数据.提取结构性数据而编写的应用框架. Scrapy使用了Twisted异步网络框架来处理网络通讯,可以加快我们的下载速度,并且包含了各 ...
- C - The Suspects POJ - 1611(并查集)
Severe acute respiratory syndrome (SARS), an atypical pneumonia of unknown aetiology, was recognized ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(九)——一步一步教你如何撸Dapr之OAuth2授权
Oauth2授权,熟悉微信开发的同学对这个东西应该不陌生吧.当我们的应用系统需要集成第三方授权时一般都会做oauth集成,今天就来看看在Dapr的语境下我们如何仅通过配置无需修改应用程序的方式让第三方 ...
- @Test无法运行
使用@Test需要导入两个依赖 junit-4.12.jar hamcrest-core-1.3.jar 添加@Test注解,却没有运行的三角形.需要在该类和方法上都加一个public public ...
- 一、unittest介绍与基础使用
一.unittest为单元测试框架,系统标准库 import unittest
- v-on精炼
v-on的介绍 在Vue中,常使用v-on指令用于监听事件的发生,v-on指令就类似于JavaScript中的addEvelistener()方法 v-on的基本使用 <div id=" ...