Centos7安装MySQL
我是刚安装完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 /232905http://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连接一下:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!