Centos8安装MySql,完美解决

  1. 本文使用yum安装mysql

  2. linux版本为 centos 8

    参考:

    MySQL官网yum源

    MySQL官网Linux-yum安装Mysql

    CentOS 8 yum安装软件时,提示无法从AppStream下载

    centos 7 安装 mysql8 以及遇到的问题的解决

    navicat连接mysql报错1251的解决方法

    如果在本文遇到困惑和问题,可参考以上文档和文章。

    本文经过作者实践,可放心使用

1.去MySQL官网

我们使用yum安装MySQL,

官网

image-20220304212934150

你可能发现了这不是MySQL8的吗,我想装其它版本怎么说?

后续操作表明:mysql80-community-release-el8-3.noarch.rpm只包含MySQL8,所以你们可以试试6和7

image-20220304213153240

ok,就它了:mysql80-community-release-el8-3.noarch.rpm

image-20220304213243334

2. 安装

  1. 第一步:下载

    wget https://dev.mysql.com/get/mysql80-community-release-el8-3.noarch.rpm
    
    image-20220304223246485
  2. 第二步:安装

yum install mysql80-community-release-el8-3.noarch.rpm

报错:

image-20220304213643652

这是centos8的问题,小插曲,一起解决

解决bug

这个问题的原因是:centos8官方已经停止提供服务,相应的yum源也已经移到归档源

比较有意思的是,阿里云的服务器的yum源好像改为了腾讯的

  1. 清理yum缓存

    yum clean all
    
  2. 重建缓存

    yum makecache
    

    还是报同样的错!!!

  3. 查看CentOS-Base.repo

    cat /etc/yum.repos.d/CentOS-Base.repo
    
    image-20220304221749246

    复制过去:

    [BaseOS]
    name=Qcloud centos OS - $basearch
    baseurl=http://mirrors.cloud.tencent.com/centos/$releasever/BaseOS/$basearch/os/
    enabled=1
    gpgcheck=1
    gpgkey=http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-Official
    
  4. 打开CentOS-AppStream.repo,注释掉原有内容,并插入新内容

    vim /etc/yum.repos.d/CentOS-AppStream.repo
    
    image-20220304222134975

    复制进去:

    [AppStream]
    name=Qcloud centos AppStream - $basearch
    baseurl=http://mirrors.cloud.tencent.com/centos/$releasever/AppStream/$basearch/os/
    enabled=0
    gpgcheck=1
    gpgkey=http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-Official
    
  5. 重建缓存

yum makecache
image-20220304222427095

3.解决bug后再来yum install

第一步:安装

yum install mysql80-community-release-el8-3.noarch.rpm
image-20220304223418007

都y就行了

第二步:查看该yum源支持哪些版本

默认开启的是MySQL8

yum repolist all | grep mysql

…,mysql80-community-release-el8-3.noarch.rpm这个是只有MySQL8的

image-20220304224226511

第三步:如果你的支持MySQL其它版本

可通编辑配置,以禁用或启用某个版本

vim /etc/yum.repos.d/mysql-community.repo
image-20220304224824364

修改enable即可,0代表禁用,1代表启用

如我这里:

image-20220304224938701

大概就是这样玩的

下面这个命令可以查看你开启了哪些

yum repolist enabled | grep mysql

第四步:安装

安装过程会询问你,一直y即可

yum install mysql-community-server

image-20220304225828109

第五步:启动、查看、开机自启

启动MySQL:

systemctl start mysqld

查看MySQL状态:

systemctl status mysqld
image-20220304230302737

开机自启:

# 开机自启
systemctl enable mysqld
# 重新加载系统配置,使开机自启立马有效
systemctl daemon-reload

登录MySQL8

MySQL较大的变动就是,第一次安装会给root用户一个临时密码,我们需要拿到这个临时密码:

grep 'temporary password' /var/log/mysqld.log

image-20220304231718338

还有一种查看默认密码的方式:

vim /var/log/mysqld.log

image-20220304231432342

ok,拿到默认密码后,登录:

会提示你输入密码,将密码复制即可

mysql -u root -p

image-20220304231751260

改密码

  1. 改密码,

需要知道的是: mysql新的安全机制要求,mysql的密码必须包含英文大小写、数字以及特殊字符

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'

image-20220304233214745

刷新:

flush privileges;

远程连接

  1. 换库

    use mysql;
    
  2. 查看数据库用户

    select user,host from user;
    

    image-20220304233603119

可以看到,root用户的host未localhost,这意味着root用户只能在本机连接数据库。

所以我们需要将他改为所有机器都能连:(或者指定为ip)

update user set host='%' where user='root';

image-20220304233810866

因为:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password. 由于用的是破解版的navicat,所以只能用第二种方法解决了

修改密码,并且不对密码加密:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密码';

修改完成,退出:

exit

image-20220304234610158

远程连接测试

服务器防火墙记得开放3306

image-20220304235004253

为了写这篇博客,拿了一台服务器安装MySQL。写到这里时已经凌晨10分,两个小时吧。只是为了自己有一份博客,需要的时候有得看,也希望能帮到各位,晚安。

更新记录

2022.5.11
由于之前gitee图床增加了防盗链导致很多博客图片失效。
此次更新,更换了图片地址

  • 27
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

为了我的架构师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值