https://www.cnblogs.com/asker009/p/15072354.html

1. 下载

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

使用wget下载yum的源信息:

wget -i -c https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

或者直接下载rpm安装包

链接地址:
https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-community-server-8.0.26-1.el7.x86_64.rpm

注意都是rpm结尾,但是文件大小相差比较大,yum源的rpm安装包只有几十K,真正的RPM安装包是几百兆。

2. 安装

2.1卸载历史版本mysql以及mariadb

# 查询
rpm -qa|grep mysql
rpm -qa|grep mariadb
# 移除
rpm -ev [需要移除组件的名称]
rpm -e --nodeps [需要移除组件的名称] //此命令为强制卸载
# 或者用yum移除
yum remove

2.2 使用yum源信息安装

# repo的安装,执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo mysql-community-source.repo
rpm -ivh mysql80-community-release-el7-1.noarch.rpm
cd /etc/yum.repos.d/
# 注意:必须进入到/etc/yum.repos.d/目录后再使用yum命令进行安装
yum -y install mysql-server # 如果报错误Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY,加上force和nodeps参数即可
# 例如:
rpm -ivh mysql-community-server-8.0.25-1.el8.x86_64.rpm --force --nodeps

2.3 使用rpm直接安装

如果报错误Header V3 DSA/SHA256 Signature, key ID 5072e1f5: NOKEY,加上force和nodeps参数

安装服务端:

rpm -ivh mysql-community-server-8.0.26-1.el7.x86_64.rpm --force --nodeps

安装客户端:

rpm -ivh rpm包
* 安装common包
rpm -ivh mysql-community-common-8.0.26-1.el7.x86_64.rpm
* 安装类库
rpm -ivh mysql-community-libs-8.0.26-1.el7.x86_64.rpm --force --nodeps
* 安装客户端(前两个是其依赖)
rpm -ivh mysql-community-client-8.0.26-1.el7.x86_64.rpm

2.4 查看安装后的信息

# 查看服务状态,可能没启动
systemctl status mysqld # 启动服务
systemctl start mysqld cat /etc/group | grep mysql
cat /etc/passwd | grep mysql
mysqladmin --version

2.5 初始化mysql

# 创建数据文件目录和mysql系统数据库 产生随机root密码
mysqld --initialize

查看初始密码:

cat /var/log/mysqld.log | grep password
或
grep 'temporary password' /var/log/mysqld.log

修改密码:没有经过测试。

复制 root@localhost: 后面的密码。登录mysql,并粘贴默认密码
因为MySQL8.0的更改,导致必须要重置密码
alter user 'root'@'localhost' identified by '12345678';
如果设置密码时候出现提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 代表需要降低policy的等级后在执行 set global validate_password.policy=0;
开启MySQL远程连接 use mysql;
#修改root账户权限
update user set host = '%' where user = 'root';
#刷新权限
flush privileges;

2.6 安全设置

mysql_secure_installation

# 提示如下步骤:
1. 输入初始密码;
2. 提示root密码过期,需要修改密码,这是mysql8的提示,输入两次密码确认;
3. 提示是否更改root密码,这步其实重复了;
4. 是否删除匿名用户,建议删除;
5. 是否禁用root账户的远程登录,建议禁用,即mysql的root只可以本机登录;
6. 是否删除test数据库,建议删除;
7. 是否重新加载权限表,选y。

2.7 mysql登录

# 输入刚才修改后的密码
mysql -uroot -p

2.8 重置密码(Mysql8.0+有变化)

先把root的旧密码置空(这个步骤可以不做)

use mysql;
update user set authentication_string='' where user='root';
# 备注:Mysql5.7+ password字段 已改成 authentication_string字段

重置成新密码:

alter user 'root'@'localhost' identified by 'newpassword';
# 备注:Mysql8.0修改密码方式已有变化(此处是个坑,需要注意)
# Mysql8.0之前:
update user set password=password('root') where user='root';

重新登录:

mysql -uroot -pnewpassword

2.9 如何停止、重启和查看mysql服务

systemctl stop mysqld //停止服务
systemctl restart mysqld //重启服务
systemctl status mysqld //查看服务

2.10 mysql相关目录

# 相关命令
/usr/bin # 配置文件目录
/usr/share/mysql # 数据库文件存放目录
/var/lib/mysql # mysql的启动配置文件
/etc/my.cnf

其他:

my.ini # windows操作系统下的配置文件
my.cnf # linux操作系统下的配置文件
mysqld # 是后台守护进程,即mysql daemon
mysql # 是客户端命令行

3. 创建用户和数据库

3.1 创建用户

用户名:wood,密码:PWDwooddb_2021,可以从任何地址登入。

create user 'wood'@'%' identified by 'PWDwooddb_2021'

3.2 创建数据库wood_db;

create database wood_db;

3.3 授权

常用授权语句

GRANT 权限 ON 数据库.表单名称 TO 用户名@主机名    对某个特定数据库中的特定表单给予授权。
GRANT 权限 ON 数据库.* TO 用户名@主机名 对某个特定数据库中的所有表单给予授权。
GRANT 权限 ON *.* TO 用户名@主机名 对所有数据库及所有表单给予授权。
GRANT 权限1,权限2 ON 数据库.* TO 用户名@主机名 对某个数据库中的所有表单给予多个授权。
GRANT ALL PRIVILEGES ON *.* TO 用户名@主机名 对所有数据库及所有表单给予全部授权。

授权wood用户所有wood_db的权限

 grant all on wood_db.* to 'wood'@'%';

查看用户授权

show grants for wood@'%';
+---------------------------------------------------+
| Grants for wood@% |
+---------------------------------------------------+
| GRANT USAGE ON *.* TO `wood`@`%` |
| GRANT ALL PRIVILEGES ON `wood_db`.* TO `wood`@`%` |
+---------------------------------------------------+
2 rows in set (0.00 sec)

如果修改没有生效,考虑使用flush privileges命令刷新权限信息。

[转帖]mysql8.0的RPM方式安装的更多相关文章

  1. Centos7安装MySQL8.0(RPM方式)

    人生处处皆学问,工作也是如此!过去不止一次在Linux上安装MySQL,可以说轻车熟路,但是写篇文章总结一下,发现有很多细节值得学习! 安装包选择 为什么用rpm? 在Linux系列上安装软件一般有源 ...

  2. RPM方式安装GreatSQL 8.0.25-16

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. GreatSQL是MySQL的国产分支版本,使用上与MySQL一致. 目录 一.系统信息 1.确认OS信息 2.OS优化调 ...

  3. mysql8数据库修改root密码,以及创建用户遇到的坑,开启远程登录,用navicat进行mysql的远程连接,mysql8.0默认编码方式,部分参数配置查询命令

    yum 安装MySQL8 echo "删除系统默认或之前可能安装的其他版本的 mysql" for i in $(rpm -qa|grep mysql);do rpm -e $i ...

  4. RPM方式安装MySQL5.6

    原文转自:http://blog.csdn.net/liumm0000/article/details/18841197 未整理! RPM方式安装MySQL5.6 a. 检查MySQL及相关RPM包, ...

  5. RPM方式安装MySQL5.6和windows下安装mysql解压版

    下载地址: http://cdn.MySQL.com/archives/mysql-5.6/MySQL-server-5.6.13-1.el6.x86_64.rpmhttp://cdn.mysql.c ...

  6. CentOS 6 下RPM方式安装MySQL5.6

    CentOS 6 下RPM方式安装MySQL5.6 1. 下载Linux对应的RPM包,如:CentOS6.7_64对应的RPM包,如下:[root@mysql ~]# ll总用量 113808-rw ...

  7. centeOS6.5 RPM方式安装MySQL5.6

    RPM方式安装MySQL5.6 a. 检查MySQL及相关RPM包,是否安装,如果有安装,则移除(rpm –e 名称) 1 [root@localhost ~]# rpm -qa | grep -i ...

  8. centos7和centos6.5环境rpm方式安装mysql5.7和mysql5.6详解

    centos环境安装mysql5.7 其实不建议安装mysql5.7 语法和配置可能和以前的版本区别较大,多坑,慎入 1.yum方式安装(不推荐) a.安装mysql5.7 yum源 centos6: ...

  9. CentOS 使用RPM方式安装MySQL5.6

    转载自:http://blog.csdn.net/liumm0000/article/details/18841197 RPM方式安装MySQL5.6 a. 检查MySQL及相关RPM包,是否安装,如 ...

  10. CentOS7下通过rpm方式安装MySQL及插入中文问题解决 [原创]

    一 CentOS下通过rpm方式安装MySQL CentOS版本:CentOS-7 MySQL版本:MySQL-5.6.22 在网上搜了一下,Linux下安装MYSQL有三种方式: 1) 通过yum命 ...

随机推荐

  1. CIDR技术划分和计算

    CIDR:无类域间路由 由于早期的IP地址的划分会浪费太多的IP地址,所以,现在都是用CIDR表示法,为此引入了子网掩码的概念,即网络位的个数可以任意指定.该方法兼容早期的IP划分方法. CIDR表示 ...

  2. VSCode C++开发环境配置: LLVM clang clangd

    工欲善其事,必先利其器 llvm/clang 比 VSCode 自带的代码提示功能速度更快,功能更强(支持 clang-tidy). 安装 llvm.clang sudo apt install ll ...

  3. 以小博大外小内大,Db数据库SQL优化之小数据驱动大数据

    SQL优化中,有一条放之四海而皆准的既定方针,那就是:永远以小数据驱动大数据.其本质其实就是以小的数据样本作为驱动查询能够优化查询效率,在SQL中,涉及到不同表数据的连接.转移.或者合并,这些操作必须 ...

  4. 揭开KPI异常检测顶级AI模型面纱

    摘要:2020GDE全球开发者大赛-KPI异常检测告一段落,来自深圳福田莲花街道的"原子弹从入门到精通"有幸取得了总榜TOP1的成绩,在这里跟大家分享深圳福田莲花街道在本次比赛的解 ...

  5. 大数据场景下Volcano高效调度能力实践

    摘要:本篇文章将会从Spark on Kubernetes 发展历程以及工作原理,以及介绍一下Spark with Volcano,Volcano如何能够帮助 Spark运行地更高效. Spark o ...

  6. 6种方法帮你搞定SimpleDateFormat类不是线程安全的问题

    摘要:本文主要讲述在高并发下SimpleDateFormat类为何会出现安全问题,以及如何解决SimpleDateFormat类的安全问题. 本文分享自华为云社区<[高并发]SimpleDate ...

  7. 实践GoF的设计模式:单例模式

    摘要:单例模式虽然简单易用,但也是最容易被滥用的设计模式.它并不是"银弹",在实际使用时,还需根据具体的业务场景谨慎使用. 本文分享自华为云社区<[Go实现]实践GoF的23 ...

  8. 在linux后台运行脚本的方法和命令

    后台运行脚本 执行脚本test.sh:./test.sh 中断脚本test.sh:ctrl+c 在1的基础上将运行中的test.sh,切换到后台并暂停:ctrl+z 执行ctrl+z后,test.sh ...

  9. App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法

    iOS 备案查看信息 iOS平台Bundle ID 公钥 证书SHA-1指纹 IOS平台服务器域名 获取 Bundle ID: 或者 https://developer.apple.com/accou ...

  10. C# 跳过值班时间代码逻辑

    /// <summary> /// 当前时间是否是值班时间 /// </summary> private bool IsDutyTime { get { var dutyTim ...