如何在CentOS上安装和配置MySQL数据库?

MySQL 8.0在CentOS上的安装步骤包括更新系统、添加Yum Repository、安装MySQL、启动服务、配置安全性和登录。

CentOS MySQL教程

在CentOS系统上安装和配置MySQL是一个常见的任务,尤其对于开发人员和系统管理员来说,本文将详细介绍如何在CentOS上安装MySQL 8.0,并提供一些常见问题的解决方案。

一、安装前的环境检查

1、确保自己在root用户下进行:在root用户下安装的MySQL,在其他普通用户下也是可以正常使用的,不用再单独安装。

2、检查Linux上是否已经安装了MySQL

   ps ajx | grep mysql
   ps ajx | grep mariadb

如果没有发现任何进程存在,说明没有MySQL正在运行,如果发现有进程在运行,需要关闭进程:

   systemctl stop mysqld

3、检查是否有MySQL的安装包

   rpm -qa | grep mysql

若有安装包出现,并且之前没有用过MySQL,可以将这些安装包删除:

   rpm -qa | grep mysql | xargs yum -y remove

4、检查是否有MySQL的残留和配置文件

   ls /etc/my.cnf
   rm -rf /etc/my.cnf
   which mysql
   which mysqld

二、下载官方的MySQL安装

1、查询Linux版本

   cat /etc/redhat-release

2、进入官网找到对应版本的安装包:http://repo.mysql.com

3、下载并上传安装包

   wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

4、解压安装包

   rpm -ivh mysql57-community-release-el7-10.noarch.rpm

5、检查是否解压成功

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

三、开始安装MySQL

1、安装MySQL服务端

   yum install -y mysql-community-server

2、可能出现GPG密钥过期问题,解决方案如下

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

之后,重新开始安装。

3、检查是否安装成功

   yum list installed | grep mysql

四、启动MySQL服务

1、启动MySQL服务

   systemctl start mysqld

2、设置开机自启动

   systemctl enable mysqld

3、检查是否成功启动

   ps aux | grep mysqld

五、登录MySQL并进行安全配置

1、获取临时密码

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

2、登录MySQL并修改密码

   mysql -u root -p
   ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

3、配置字符集:编辑/etc/my.cnf文件,添加以下内容:

   [client]
   default-character-set=utf8
   
   [mysql]
   default-storage-engine=INNODB
   default-character-set=utf8

六、常见问题及解决方案

FAQ 1: 如何更改MySQL端口号?

答:编辑MySQL配置文件/etc/my.cnf,找到[mysqld]部分,添加或修改port参数:

[mysqld]
port = 3306

保存后重启MySQL服务:

systemctl restart mysqld

FAQ 2: 忘记MySQL root密码怎么办?

答:可以通过跳过权限表的方式重置root密码,停止MySQL服务:

systemctl stop mysqld

使用跳过权限表的方式启动MySQL:

如何在CentOS上安装和配置MySQL数据库?
mysqld_safe --skip-grant-tables &

登录MySQL:

mysql -u root

选择数据库mysql

USE mysql;

将root用户的认证方式改为caching_sha2_password(适用于MySQL 8.0):

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;

退出并重启MySQL服务:

exit;
systemctl restart mysqld

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1409393.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希的头像未希新媒体运营
上一篇 2024-12-15 02:20
下一篇 2023-12-21 16:33

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入