Mysql8 CentOS7 rpm和rpm Bundle安装

目录

1-1、Centos7安装【rpm安装包&&可以连外网】

1-2、Centos7【不能连外网并且所有mysql项都为空】

2、Mysql root用户处理和创建新的用户


当前服务器为Centos7,如果是CentOS6则自行下载对应的包。进入Mysql官方下载地址:https://dev.mysql.com/downloads/

 点击Mysql Community Server,选择自己是使用rpm(Redhat Package Manager小红帽系统自己的安装包)方式,或者是二进制安装包,不过这里可以下载tag.gz或者tar的安装包,如下:

 可以从已上传的百度网盘下载

Mysql8.0.27

链接: https://pan.baidu.com/s/1Q5D1--Z4_RcoO1Cmf9RP0Q

提取码: boqs

Mysql8.0.18

链接: https://pan.baidu.com/s/1QjVkuENu38gA0R0pRws_IA

提取码: 2jfw

说明:下面都会基于mysql 8.0.18进行安装,下面有基于rpm和二进制包进行安装(这里选择 tar.gz压缩格式),而 rpm安装方式又会根据镜像中是否已经存在 除了 Mysql Server之外的所有服务进行说明和安装。

1-1、Centos7安装【rpm安装包&&可以连外网】

操作系统就是小红帽;选择当前的Centos7版本;下载RPM Bundle即可

执行 yum repolist all | grep mysql 查看已有的mysql 项,已经有common , libs, client等其他版本的服务端

 下载包:wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

或者执行下载后上传,可以使用该百度网盘地址

链接: https://pan.baidu.com/s/1dXIr8ypfwBCcURpTgXwREg 提取码: s2ca 

安装:rpm -ivh mysql80-community-release-el7-11.noarch.rpm

查看:cd /etc/yum.repos.d/ 下面是否有mysql* 的两个文件

更新yum源:

yum clean all

yum makecache

查询当前启动的mysql版本 yum repolist all | grep mysql

 根据mysql的信息查看 enable的项,选好版本,进行安装:

yum install mysql-community-server

启动:systemctl start mysqld.service

停止:systemctl stop mysqld.service

重启:systemctl restart mysqld.service

查看当前root的密码 cat /var/log/mysqld.log | grep password

2022-02-27T06:11:57.319195Z 6 [Note] [MY-010454] [Server] A temporary 
password is generated for root@localhost: oxMKeegqy4:D

执行中遇到问题:

1、yum更新源遇到问题,Status code: 404 for https://repo.huaweicloud.com/centos/8/AppStream/x86_64/

cd /etc/yum.repos.d, 在该目录下先创建一个备用文件夹,并将该目录下的所有文件备份进去:

mkdir bak cp * bak/

再执行:sed -i 's/$releasever/8-stream/' CentOS*repo

2、Error: Unable to find a match: mysql-community-server

执行yum -y install mysql-community-server遇到改报错,先执行:

yum module disable mysql 在执行安全命令

1-2、Centos7【不能连外网并且所有mysql项都为空】

执行 yum repolist all | grep mysql 查看已有的mysql 项(common , libs, client等),可能都为空,如下:

那么上传 mysql-8.0.18-1.el7.x86_64.rpm-bundle.tar 包到服务器,并使用 tar -xvf 进行解压,注意这个包不是tar.gz, 所以解压命令是 -xvf 不是 -zxvf ,如下: 

那么需要使用rpm包分别安装common , libs, client, server服务,如下:

rpm -ivh mysql-community-common-8.0.18-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-libs-8.0.18-1.el7.x86_64.rpm   --nodeps --force
rpm -ivh mysql-community-client-8.0.18-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-server-8.0.18-1.el7.x86_64.rpm --nodeps --force

再执行 rpm -qa | grep mysql 命令查看安装情况: 

 初始化mysql,不知道怎么的 --console没有生效,可以直接查看文件日志中的 mysql root密码

mysqld --initialize --console;
cat /var/log/mysqld.log | grep password;

查看mysql服务是否真的启动了,可以执行 systemctl status mysqld, 也可以ps命令查询mysql进程,很不幸,没有启动

遇到问题不要慌, mysql这里可以三种方式排查错误信息

  1. systemctl status mysqld查看错误信息
  2. journalctl -xe
  3. cat /car/log/mysqld.log    (在mysql配置文件 /etc/my.cnf中配置) 

 后面可能会遇到的问题有:

vi /usr/lib/systemd/system/mysqld.service.   删除启动动态替换的配置项$MYSQLD_OPTS

 修改 /var/lib/mysql/ 命令下的文件的权限,这里我直接暴力的将所有文件权限修改为 777(所有用户读写执行权限) chmod 777 /var/lib/mysql/*      否则如下图:

2、Mysql root用户处理和创建新的用户

先cd 到mysql bin目录,然后进行登陆 mysql -u root -p  然后根据提示输入密码

修改root密码: ALTER USER 'root'@'localhost' IDENTIFIED BY '!Kevin123';

防止在远程不能登陆:alter user root identified with mysql_native_password by '!Kevin123';

远程设置:
mysql> use mysql;
mysql> update user set host='%' where user='root';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
mysql>  Grant all privileges on test.* to 'root'@'%';
mysql> FLUSH PRIVILEGES;
mysql> quit;

开放端口号:

-- 查看已经开放的端口 firewall-cmd --list-portsfirewall-cmd --query-port=3306/tcp

-- 开启端口 firewall-cmd --zone=public --add-port=3306/tcp --permanent

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值