CentOS7 安装 MySQL8

14 篇文章 0 订阅
本文详细介绍了如何在CentOS7上卸载原有的MySQL和MariaDB,然后安装MySQL,包括开启服务、设置防火墙、修改时区以及允许Java程序访问。还提供了初始化密码、开放3306端口、添加开机启动和一些常用命令的操作步骤。
摘要由CSDN通过智能技术生成

清理原有的MySQL

查找出安装的mysql软件包和依赖包

rpm -pa | grep mysql

删除上面的程序

yum remove mysql-xxx-xxx-xxx

查找mysql配置文件

find / -name mysql

删除mysql配置文件

rm -rf XXX

 

删除原有的mariadb

查询是否已经安装

rpm -qa|grep mariadb

删除mariadb

rpm -e --nodeps mariadb-libs

 

MySQL安装前准备

官网下载MySQL的repo源
https://dev.mysql.com/downloads/repo/yum/
在这里插入图片描述
在这里插入图片描述

将文件上传到CentOS
在这里插入图片描述

安装 yum repo文件并更新 yum 缓存

rpm -ivh mysql80-community-release-el7-5.noarch.rpm

执行结果:会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo mysql-community-source.repo
在这里插入图片描述
更新 yum 命令

yum clean all
 
yum makecache

 

安装MySQL

查看mysql yum仓库中mysql版本

yum repolist all | grep mysql

MySQL8默认是开启的
在这里插入图片描述
若未开启,需开启才能安装(下面示例是关闭8,开启5.7)

yum-config-manager --disable mysql80-community
 
yum-config-manager --enable mysql57-community

或者可以编辑 mysql repo文件,将相应版本下的enabled改成 1 即可

vi /etc/yum.repos.d/mysql-community.repo 

在这里插入图片描述

开始安装

yum install mysql-community-server -y

mysql80-community-release-el7-5.noarch.rpm 版本可以正常安装,但7-6的会报错
需要加 --nogpgcheck 避免下面报错
GPG key retrieval failed: [Errno 14] curl#37 - “Couldn’t open file /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022”

在这里插入图片描述
 

开启MySQL服务

开启命令

systemctl start mysqld.service

获取初始密码
MySQL在安装后会创建一个root@locahost账户,并且把初始的密码放到了/var/log/mysqld.log文件中

cat /var/log/mysqld.log | grep password

在这里插入图片描述

使用初始密码登录mysql

mysql -u root -p 

修改初始密码,密码必须符合当前策略,若需修改策略,请参考 MySQL密码策略

ALTER USER 'root'@'localhost' IDENTIFIED BY 'xxxxxxxxx';

 

防火墙放开3306端口

查看防火墙状态,若未开启,无法设置

systemctl status firewalld

启停防火墙

systemctl start firewalld
systemctl stop firewalld

开放3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

重启防火墙:

systemctl reload firewalld

查看3306是否已开启

firewall-cmd --query-port=3306/tcp 

将mysql 服务加入开机启动项,并启动mysql进程

  systemctl enable mysqld.service
  systemctl start mysqld.service

 

开放java程序访问

本地连接远程Mysql,一直报 java.sql.SQLException:null,message from server:"Host ‘’ is not allowed to connect.

原因是:远程服务器不允许你的java程序访问它的数据库。所以,我们要对远程服务器进行设置,使它允许你进行连接。

打开mysql控制台,

mysql -u root -p
然后输入密码
 use mysql;
 show tables;
 select host from user;
 update user set host ='%' where user ='root';

重新启动mysql服务

systemctl restart mysqld.service

 

修改时区

进入命令行,查看当前时间

select now();

修改时区,加8小时

set global time_zone = '+08:00'; 
set time_zone = '+08:00'; 

show variables like "%time_zone%";

上述命令当时生效,但是当其他人登录时依旧没有修改,重启数据库,发现重启后修改的参数又回到未修改前
解决方案:修改配置文件

vim /etc/my.cnf

在[mysqld]区域中加上
default-time_zone = ‘+8:00’
在这里插入图片描述

重启 MySQL

systemctl restart mysqld

 

常用命令

登录mysql

mysql -u username -p

退出mysql

quit

启动mysql

systemctl start mysqld.service
结束

systemctl stop mysqld.service

重启

systemctl restart mysqld.service

开机自启

systemctl enable mysqld.service

查看mysql版本

select version();
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值