Centos7安装MySQL

2023-12-13 21:49:52

我是刚安装完Centos就安装了mysql,有的时候是使用过Centos安装mysql,那我们就要先检查一下是否已有mysql或者mariadb。

mariadb是有原mysql开发者开发的一款数据库,与mysql可以说师出同门,所以在安装文件和安装步骤上几乎相同,所以我们也要注意。

ps ajx | grep mysql
ps ajx | grep mariadb

如果存在,则会返回对应的进程信息,如果不存在则只会返回命令的执行结果,如下,我没有安装mariadb但是已经安装好了mysql。

查看是否有遗留安装包

systemctl stop mariadb.service  //停?mariadb服务
systemctl stop mysqld           //停?mysql服务
rpm -qa | grep mariadb        //查看是否有mariadb安装包
rpm -qa | grep mysql        //查看是否有mysql安装包

如果以上命令有查到相关安装包,执行移除命令

yum -y remove 包名

查看是否存在/etc/my.cnf文件,存在则更名,加一个.bak后缀备份,不存在则跳过此步骤

开始新的mysql版本安装:

查看Centos版本:cat /etc/redhat-release,例如我的版本是7.9

浏览器打开mysql的yum源:???

Index of /232905icon-default.png?t=N7T8http://repo.mysql.com/

在页面找到与Centos7对应的版本并下载,如果没有准确对应的版本则下载大版本。

在Centos7 的/usr/目录下新建一个文件夹/mysql,并将操作地址切换到该目录

mkdir /usr/mysql/
cd /usr/mysql/

将之前下载的.rpm文件上传至该目录。备用。

检查本地是否有mysql的yum源

ls /etc/yum.repos.d/ -l

我这里没有

执行刚刚命令,将刚刚下载的yum源添加进来

rpm -ivh 刚刚下载的文件的名称

添加后再次检查yum源列表

ls /etc/yum.repos.d/ -l

这次就有了mysql的yum源

检查一下yum能不能正常使用

yum list | grep mysql

如果能用,就会出现很多mysql的安装包

不能用的话,会报错“未知的错误”,则检查网络是否通畅(ping www.baidu.com)

确认yum能用,安装mysql服务

yum install -y mysql-community-server

如果安装到最后报错:

Failing package is: mysql-community-libs-XXXXX
GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

表示秘钥过期,执行命令如下后再次安装:

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

安装结束后检查文件是否齐全存在

ls /etc/my.cnf         //配置文件是否存在
which mysqld        //服务端是否存在
which mysql        //客户端是否存在

如果全部存在,则表示安装成功。启动mysql服务

systemctl start mysqld.service

查看一下是否启动成功:

ps ajx | grep mysql

能看到mysql的进程信息,表示成功启动。

获取默认密码登录,修改密码:

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

使用获取的密码登录

mysql -uroot -p

登录后修改密码:注意分号不要丢,密码要包含大写字母、小写字母、数字、特殊字符。

 ALTER USER 'root'@'localhost' IDENTIFIED BY '要修改的密码';

退出mysql:quit

重启mysql服务

systemctl restart mysqld

如果想要远程使用navicat登录数据库,需要开启远程允许。

use mysql;        //使用mysql
select Host,User from user;    //查看user表

默认root用户只允许本地登录,将它修改为所有地址都可以登录

update user set Host='%' where User='root';
flush privileges;

关闭防火墙,才能远程登录数据库

sudo systemctl disable firewalld

配置完成后,编辑配置文件

vi /etc/my.cnf

将以下内容追加在文件末尾

character-set-server=utf8     // 服务端的编码格式
default-storage-engine=innodb // 储存引擎
port=3306        //占用端口号

改完重启mysql服务。

使用navicat连接一下:

文章来源:https://blog.csdn.net/Chrisliuluo/article/details/134815842
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。