MySQL环境配置

安装与卸载中,⽤⼾全部切换成为root,⼀旦安装,普通⽤⼾也能使⽤。

一.卸载不要的环境

  • 陈旧环境清理

有的系统自带数据库,或者mariadb(MySQL的一种分支版本),有的可以使用,但作为MySQL数据库的学习,需要把其他的卸载掉。

  1. 首先检查是否含有MySQL数据库、mariadb数据库。

image-20230710133756111

image-20230710134038887

  1. 如果存在MySQL,那么先关闭它,再进行卸载。

image-20230710134457359

在Linux中,采用yum的方式获取安装包,一般都是.rpm的,rpm -qa就能查到所有的安装包,但此时只想查看MySQL的,所以grep筛选一下:

  1. 查看mysql安装包。

image-20230710134821859

  1. 卸载3中查找的安装包(如果你的系统中存在,就需要删掉)。

image-20230710135037658

  1. 确认是否存在遗留文件:ls /etc/my.cnf ,若有则需要删除。

mysql的数据文件一般不会随着卸载而被删除,数据会保存在/var/lib/mysql/目录下,但不会对我们的后续安装MySQL产生影响。

所以,卸载不要的环境最终可以总结以下这三点:

  1. 不存在mysql对应的rpm包
  2. 没有对应的mysql进程
  3. 没有my.cnf配置文件

做完前两步后my.cnf若仍存在,可以选择使用rm指令删除配置文件或者备份起来。

二.获取mysql官方yum源

image-20230710140459424

官方yum源中存在多个版本,要结合我们自己的系统版本进行相应的版本下载,否则可能会存在软件兼容性问题。

  1. 首先需要查看我们系统的版本:

image-20230710140329503

  1. 然后在官方中找到对应的版本进行下载:找到后直接点击

image-20230710140805736

下载之后放到桌面,方便通过rz命令传到centos中。为了方便管理,在root的家目录新建一个MySQL目录来保存此文件:

image-20230710141301371

  1. 查看yum源是否含有MySQL&&mysql的yum源安装

image-20230710141522643

不存在mysql的yum源,所以直接安装会失败,现在就需要先进行相应的yum源安装:

image-20230710141911031

  • 注:ivh选项相当于拷贝。

安装好之后,观察一下此时的yum源列表:

image-20230710142027400

此时就可以查看安装的这个yum源,可以看到有若干个版本:

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

image-20230710142507542

总结一下:获取步骤可大致分为以下几步:

  • 在MySQL官网中找到对应的yum源并进行下载。
  • 通过rpm进行安装。
  • 安装前后效果就是更新本地yum源,让其中具有MySQL的yum源。
  1. 测试是否可以查到关于MySQL的内容(比较慢)
yum list | grep mysql

image-20230710142936673

说明此时mysql的yum源已经生效。此时mysql-community-release-el7.rpm安装包没有用处了,可以删掉也可以不进行处理。删掉之后也可以查看:

image-20230710143251885

此时已有了一键安装mysql的条件。

三.安装mysql服务

yum install -y mysql-community-server

image-20230710143632376

若存在以上问题,说明没有安装成功,此时将标题翻到:常见问题,对此进行解决。

image-20230710144137453

验证是否安装成功:

首先查看是否存在my.cnf的文件:

image-20230710144319193

查看mysqld服务端:
image-20230710144425175

查看mysql客户端:

image-20230710144512772

三位一体,就安装成功了。

启动mysql

image-20230710144743863

此时可以查看mysql的端口号:(mysql是一种网络服务)

image-20230710144822436

image-20230710144922183

四.mysql登陆

前三节已经安装好了mysql,在使用之前还需要进行登陆:

登陆方法有多种,但这里了解常见的一种就行了。

方法步骤:

  1. 打开mysql配置文件:my.cnf。
vim /etc/my.cnf

image-20230710153036011

  1. 在尾部添加:skip-grant-tables 并保存。

image-20230710153159252

  1. mysqld服务重启生效
systemctl stop mysqld
systemctl start mysqld
  1. 登陆mysql

image-20230710153901454

最后显示的mysql>表示已经登陆成功,可以使用mysql了。

image-20230710154222489

下面的各个名称都是数据库。

image-20230710160809064

输入quit退出数据库。

五.设置配置文件my.cnf

配置⼀下my.cnf,主要是数据库客⼾端和服务器的编码格式->统一使用UTF-8的编码格式。

mysql作为网络服务,那么就可以更改其指定的端口号,通过配置my.cnf进而更改端口号。(仅仅演示,后续仍需要改回)

image-20230710161059977

  • datadir=/var/lib/mysql代表数据库未来建表建库时的对应数据所在的路径。

  • socket:域间套接,会把本地mysql进程的pid放到mysql.sock中。

  • log-error:错误日志放到mysqld.log中‘

  • character-set-server:编码格式为utf-8

  • default-storage-engine:存储引擎为innodb

image-20230710162155830

配置之后为了生效,需要重新启动mysqld:

systemctl restart mysqld

image-20230711202034087

记得改回3306。

六.设置开机启动【可以不设】

#开启开机⾃启动
systemctl enable mysqld
systemctl daemon-reload

image-20230711205418581

不过云服务器不会关机,因此没什么影响。

七.常见问题

  • mysql 已经配置了客⼾端服务器utf8编码,但是⽆法输⼊中⽂
确保您在终端命令⾏中可以输⼊中⽂
[whb@VM-0-3-centos ~]$ env |grep LANG
LANG=en_US.utf8
  • 安装遇到秘钥过期的问题:(三.安装mysql服务出现了此情况)
Failing package is: mysql-community-client-5.7.39-1.el7.x86_64
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

再重新安装mysql-community-server。

yum install -y mysql-community-server
  • mysql8.0的防火墙问题:

安全策略性更好,一旦设置免密码登陆,就不能网络登陆了,只能进行本地的域间套接字进行通信,因此我在配置skip-grant-tables后netstat -nltp查不到相应的网络端口号等等,因为免密码登陆导致不安全,8.0版本为了保证安全就就禁止掉了网络通信。

解决方案:若想查到网络进程,则只需把免密登陆的配置注释掉即可。

8.0在后续的练习,不会出现问题。只有可能在mysql链接C语言时会出现问题,所以到时候在换成5.6版本的mysql。

腾讯云服务器Linux(CentOS7)Mysql8远程连接失败,port端口为0,

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

每天都要进步呀~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值