当前位置: 首页 > news >正文

【MySQL】手把手教你centos7下载MySQL

centos7下载MySQL

  • 前言
  • 正式开始
    • 卸载不需要的环境(如果你之前没有安装过数据库相关的东西可以跳过)
    • 下载mysql
    • 登录mysql
      • 登陆⽅法⼀【不⾏就下⼀个】
      • 登陆⽅法⼆【不⾏就下⼀个】
      • 登录方式三

在这里插入图片描述

前言

安装和卸载MySQL都用系统的root权限,更方便一点,安装成功后系统的普通用户也是可以用的。

正式开始

卸载不需要的环境(如果你之前没有安装过数据库相关的东西可以跳过)

这里介绍一下怎么卸载mariadb,因为我的系统中有一个mariadb,卸载MySQL也是同理的。

首先,用下面这个命令查看一下你的系统中有没有运行mariadb服务:

ps ajx | grep mariadb 
#这里是查看mariadb,如果你想看你系统中有没有mysql在运行可以将mariadb换成mysql

我的系统查出来是这样的:

[root@VM-24-6-centos ~]# ps ajx | grep mariadb5779  5956  5779  5779 ?           -1 Sl      27  80:43 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock
12731 13051 13050 12731 pts/12   13050 S+       0   0:00 grep --color=auto mariadb

其中很长的那个进程就是mariadb的服务器。

如果你的系统中也有,那就先用下面的命令给关掉:

systemctl stop mariadb.service

然后再用ps ajx | grep mariadb就没有了:

[root@VM-24-6-centos ~]# ps ajx | grep mariadb
12731 15795 15794 12731 pts/12   15794 S+       0   0:00 grep --color=auto mariadb

一般通过yum获取的安装包格式都是.rpm,如果你之前安装过,肯定是保留有这些安装包的,这里的mariadb也是,用rpm -qa可以查看所有的安装包,不过这里只想要卸载mariadb,所以要加一个grep:

[root@VM-24-6-centos ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
mariadb-server-5.5.68-1.el7.x86_64
mariadb-5.5.68-1.el7.x86_64
mariadb-devel-5.5.68-1.el7.x86_64

可以看到这里有四个安装包,可以一个一个手动删除,但是也可以用一下xargs来转换命令函参数:

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

这样就卸载成功了:
在这里插入图片描述

再来查看一下mariadb相关的配置文件,文件:/etc/my.cnf,ls查看一下:
在这里插入图片描述
如果没有这个文件那就没什么问题,如果有可以做一下备份(重命名一下)。

然后再看看有没有原先你遗留下来的数据库,在/var/lib/mysql/路径下:
在这里插入图片描述

如果有,不用关心,不回影响重新下载MySQL的使用,如果没有也没问题。

下载mysql

首先,最重要的一步,看一下你系统的发行版本,等会下载的时候要按照版本下。

[root@VM-24-6-centos ~]# cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)

可以看到我这里是7.9的。

然后要从这个网站中下载一个mysql的yum源:mysql官⽅yum源
点开之后非常乱,是这样的:
在这里插入图片描述

没关系,鼠标放到右边空白的地方,右键:
在这里插入图片描述

点击查看页面源代码,就会变成这样:
在这里插入图片描述

对比中间的:
在这里插入图片描述

来找你的版本,往下翻,其中以el开头的就是centos的,有两种:

一种是mysql57:
在这里插入图片描述

一种是mysql80:
在这里插入图片描述

后面的el几 - 几的就表示你的centos的发行版本,找一个最匹配的。

我这里下载mysql57的,你也可以下载80的,但是我后续会讲解mysql,如果你想要根据我的博客来学习的话,建议跟着我下载57的,因为不同版本可能出现的问题会不太一样。

前面也看到了我的centos版本是7.9的,那我下载的就是这个:
在这里插入图片描述

如果上面没有和你版本匹配的,就可以下载最下面的那个:
在这里插入图片描述

注意:最好安装和⾃⼰系统⼀致的mysql版本,否则可能会存在软件兼容性问题。

下载好之后就是这个:
在这里插入图片描述

然后打开你的xshell,如过你没有rzsz,用yum下一个,可以直接从你的Windows下把文件搞到你的Linux中:
在这里插入图片描述

创建一个mysql目录,把这个文件放进去:
在这里插入图片描述

可以看到就是.rpm结尾的。

然后用下面这个命令:

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

相当于是解压。

运行效果:

[root@VM-24-6-centos MySql]# rpm -ivh mysql57-community-release-el7-9.noarch.rpm 
Preparing...                          ################################# [100%]
Updating / installing...1:mysql57-community-release-el7-9  ################################# [100%]

然后再:

[root@VM-24-6-centos MySql]# rpm -qa | grep mysql
mysql57-community-release-el7-9.noarch

有这个就OK。

然后再看一下你的yum源有没有mysql相关的:

yum list | grep mysql

可以能会比较慢,效果:
在这里插入图片描述

如果有上面这些效果就ok。

然后就可以安装mysql了,用下面的命令:

yum install -y mysql-community-server

如果你下载的时候遇到这样的问题:
在这里插入图片描述
不用担心,用下面的命令就解决了:

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

执行完这个命令再重新执行yum install的那个命令就好了。

正确下载好的效果:
在这里插入图片描述

这样就下载完了。

再来看一下mysql的相关配置文件:
在这里插入图片描述
是有的。

再看一下mysqld服务器和mysql:
在这里插入图片描述

这里mysqld是在sbin目录下的,只有超级用户才能启动服务器,普通用户不能启动,不过我们用的时候是把sql语句交给mysql,然后mysql再将我们的请求交给mysqld的,所以普通用户也是能用mysql的。

此时启动mysqld:
在这里插入图片描述

这样就能看到服务器已经启动了,一般以d开头的都是守护进程(我前面网络的博客中讲过),这里的mysqld一样,也是一个守护进程,用netstat也能查看到:
在这里插入图片描述

登录mysql

这里服务器启动了mysql也就能登录了,但是这里刚下载登录不上去,不知道密码:
在这里插入图片描述

登陆⽅法⼀【不⾏就下⼀个】

获取临时root密码

[root@VM-24-6-centos MySql]# grep 'temporary password' /var/log/mysqld.log

如果你试了之后没有用,没关系,我的也没有。那就下一个方法。

不是说没有这个文件,而是较新版本下已经不支持这个方法了,但这个日志文件还是在的:
在这里插入图片描述

登陆⽅法⼆【不⾏就下⼀个】

如果你安装的最新的mysql,没有所谓的临时密码,root(这里的root是指mysql的root,和Linux系统重的root不是一个东西,这个后面博客再说)默认没有密码

试着直接client登陆⼀下:
在这里插入图片描述

我这里能直接登上,不知道你的能不能。如果你的登上了,输入quit; 就能退出。

如果你还是登不上,看下一种。

登录方式三

打开配置文件:
在这里插入图片描述

进去之后是这样的:
在这里插入图片描述
在[mysqld]最后⼀栏配置(不知道是什么,就放在配置⽂件最后) 加⼊: skip-grant-tables 选项,并保存退出:
在这里插入图片描述

这里配置文件修改好之后要重新启动一下mysqld,因为之前启动的时候是按照之前的配置文件启动的:
在这里插入图片描述

此时再次登录,虽然还是让你输入密码,但是你随便输入啥都能登上去,就是不输入光按个回车也能登录。

或者说登录的时候不加上选项 -p 就能直接登录:
在这里插入图片描述

下面再对配置文件做一点修改,主要是将数据库客户端和服务端的编码格式默认配置一下,修改如下:
在这里插入图片描述

port是默认端口,这里修改默认的是3306。
character-set-server是编码,这里给的是UTF-8。
default-storage-engine是存储引擎,这里给的是innodb。

mysql其实是一个网络服务,所以也是要用端口号的,不过这里是单机式访问。关于编码和存储引擎的事我后面博客再讲,这里就先了解一下就行。

到这里所有该干的都完成了,在练习初期,mysql先不搞什么用户的管理,先按root用着,我后面博客尽快讲,等讲到用户管理了再考虑新建普通用户、给root设置密码登工作。

到此结束。。。

http://www.lryc.cn/news/224645.html

相关文章:

  • openlayers
  • 力扣每日一道系列 --- LeetCode 88. 合并两个有序数组
  • Android Studio(项目收获)
  • MQ写满的情况如何处理?
  • 点名(缺失的数字),剑指offer,力扣
  • 云安全—Dashboard 攻击面
  • FCOS难点记录
  • java通过FTP跨服务器动态监听读取指定目录下文件数据
  • 5G边缘计算网关的功能及作用
  • 阿里云AIGC小说生成【必得京东卡】
  • 数据结构之AVL树
  • 如何用Java实现一个基于机器学习的情感分析系统,用于分析文本中的情感倾向
  • 开发聚合支付的的意义
  • ChatGPT生产力|中科院学术ChatGPT优化配置
  • 语音播报speechSynthesis最简单的例子(亲测有用)
  • 呆头鹅-全自动视频混剪,批量剪辑批量剪视频,探店带货系统,精细化顺序混剪,故事影视解说,视频处理大全,精细化顺序混剪,多场景裂变,多视频混剪
  • 牛客竞赛网(爱吃素)
  • 基于高效多分支卷积神经网络的生长点精确检测与生态友好型除草
  • 11月9日,每日信息差
  • 什么是 eCPM?它与 CPM 有何不同?
  • Power Automate-创建和运行
  • 【STM32 开发】| INA219采集电压、电流值
  • 蓝桥杯每日一题203.11.7
  • ESP32建立TCP连接
  • 普华永道成功举办《国有基金高质量发展提效创效服务》主题分享活动,助力国有基金提效创效
  • 黑洞路由的几种应用场景
  • 数据分析:智能企业七步曲(一)
  • Django ModelSerializer 实现自定义验证详解
  • 在ubuntu sudo apt-get update 更新报错
  • Linux——手把手教你解决sudo指令无法使用的问题