微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

LinuxCentOS 7安装MySQL小白笔记

Linux(CentOS 7)安装MysqL(小白笔记)

  1. 1 本地主机进入 https://dev.mysql.com/downloads/mysql 进入后页面显示如下:

image-20220707113054064

image-20220707113124028

image-20220707113139773

下载下来是 MysqL80-community-release-el7-6.noarch.rpm 文件(不同版本下载后名字可能不同,无所谓)

  1. 2 以上步骤都可以使用下面的Linux命令完成,并且使用这种方法可以略过下面 2. 的上传步骤
 # 安装wget命令
 yum -y install wget 
 # 然后进入你想把文件保存到的目录(我选的 /opt 目录),下面不特意写 cd 命令的,就是不用在意执行路径
 cd /opt
 # 下载咱们要的 .rpm 文件
 wget -P /opt https://dev.MysqL.com/get/MysqL80-community-release-el7-6.noarch.rpm
 # 大写 -P 是指定文件下载到哪个目录,我是下载到 /opt 目录了
  1. 将下载好的 .rpm 文件 上传到Linux服务器,可以借助工具,如MobaXterm来上传,或通过下面的cmd命令(注意是在本地主机的cmd执行命令)

    注意:要记住文件的保存路径(我是保存在了 /opt 目录下)

scp 本地文件路径 服务器用户名@远程机器IP:/服务器目录/给文件取个名(或直接复制原文件名)

# 实例:
scp E:\Edge_Download\MysqL80***.rpm(文件名) root@172.128.1.10:/opt/MysqL80***.rpm(文件名)

# 回车之后输入你的Linux用户密码,就上传成功了
  1. 接下来就进入Linux进行操作

    注意:我们接下来要使用Linux的 rpm 命令,某些Linux版本里可能没有,不要慌,咱们可以让它有:

    yum install rpm
    

(1)卸载Linux自带的mariadb

# 咱们这里先不管语句的具体意思,后面再学,先直接复制粘贴用呗
rpm -qa | grep mariadb
# 执行上一条语句后,会显示出类似于 mariadb-libs-5.5.68-1.el7.x86_64 的小编
# 让我们干掉它:(语句中间的 小编 记得换成上一步查出来的 小编 )
rpm -e mariadb-libs-5.5.68-1.el7.x86_64 --nodeps

(2)安装所需依赖:一般是这一步,但是以防万一缺少依赖,就再安装一遍,又不要钱

yum install libaio -y
yum install net-tools -y

(3)接下来就要用到咱们在 1. 里下载的文件了;依旧是Linux命令

cd /opt

rpm -ivh MysqL80-community-release-el7-6.noarch.rpm
  1. 完成第 3. 步后,就要去修改MysqL的国内镜像源了,我选择清华的MysqL镜像

    咱们先来获取镜像的链接留用:

(1)进入 https://mirrors.tuna.tsinghua.edu.cn 进入后页面显示如下:

image-20220707113933131

image-20220707114419494

image-20220707114432208

image-20220707114448203

咱们来记住这个链接,下面要用 https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64

(2)又到了Linux命令时间

# 进入Linux配置文件所在的目录
cd /etc/yum.repos.d
# 以防万一,咱们来下载一个 vim编辑器(比自带的vi编辑器好看一点,操作跟vi一样,所以不下载也没影响)
yum -y install vim
# 修改配置文件目录下的 MysqL-community.repo 文件
vim MysqL-community.repo

然后应该是跟下面差不多的界面(看看就行):

(直接删掉文件里的所有内容,复制下面的配置文件内容就行,需要改的也就两个地方,一是咱们的链接,二是很显然的版本号 5.7 )

image-20220707134420714

配置文件内容

# Enable to use MysqL 5.7
[MysqL57-community]
name=MysqL 5.7 Community Server
baseurl=https://mirrors.tuna.tsinghua.edu.cn/MysqL/yum/MysqL-5.7-community-el7-x86_64
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL-2022
       file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL

[mysql-connectors-community]
name=MysqL Connectors Community
baseurl=https://mirrors.tuna.tsinghua.edu.cn/MysqL/yum/MysqL-5.7-community-el7-x86_64
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL-2022
       file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL

[MysqL-tools-community]
name=MysqL Tools Community
baseurl=https://mirrors.tuna.tsinghua.edu.cn/MysqL/yum/MysqL-5.7-community-el7-x86_64
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL-2022
       file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL

[MysqL-tools-preview]
name=MysqL Tools Preview
baseurl=https://mirrors.tuna.tsinghua.edu.cn/MysqL/yum/MysqL-5.7-community-el7-x86_64/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL-2022
       file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL
  1. 终于

(1)安装MysqL

yum install MysqL-community-server
# 就这一条命令,然后等它安装结束就成,但也可能会出现一些错误,比如下面:

(2)可能会遇到的报错:"Couldn‘t open file /etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL-2022"

# 解决办法:
rpm --import https://repo.MysqL.com/RPM-GPG-KEY-MysqL-2022
# 然后就可以再次运行上面(1)的安装语句了,至于出现什么警告啥的,不用管,只要能顺畅的Seccessful就没问题了

(3)查看是否安装成功

rpm -qa | grep MysqL
# 出现下面的界面就可以了

image-20220707140525859

(4)因为MysqL 5.6 以上的版本都是认有初始密码的,咱们得先去找到认密码

# 启动MysqL(注意 MysqLd 不是写错了,它就是那样,奇奇怪怪)
systemctl start MysqLd
# 找初始密码
cat /var/log/MysqLd.log | grep "A temporary passwor"
# 应该会出现以下内容,里边就有密码:

image-20220707141157491

(5)现在就可以登录MysqL,然后修改自己的root密码了(依旧是在Linux里)

MysqL -u root -p
# 然后输入初始密码,登陆成功应该是下面的界面

image-20220707141605526

(6)然后在 MysqL > 里依次输入以下命令(注意分号' ; '结尾)

MysqL 认的密码规则非常复杂,是真记不住)

(为了咱们设置密码更灵活,就把下面三个都输入一遍吧)

# 修改密码复杂度校验规则
set global validate_password_policy=0;
# 修改密码长度限制
set global validate_password_length=1;
# 修改密码为123456 (自己玩儿可以设这个密码,但别真的这么干)
alter user 'root'@'localhost' identified by '123456';

# 授权远程连接(这儿的654321是远程连接数据库时使用的密码)
grant all privileges on *.* to 'root'@'%' identified by '654321' with grant option;
# grant 授权的动作,也是MysqL中的命令,sql语句
# all privileges 表示所有的权限
# *.* 指定所有的数据库以及库里的表,点的前面表示库,点的后面表示表
# to 表示给谁权限
# @"%” 表示允许使用root用户的远程机器,从任意的地方来访问,%表示任意IP(也就是远程机器的IP地址)
# identified by 定义远程认证的密码

# 刷新权限信息
flush privileges;

# 退出MysqL
exit;

# 退出之后呢就进入了Linux界面
# 重启MysqL
systemctl restart MysqLd
# 再登陆的话,密码就是咱们自己的密码了
  1. 远程连接

方法一:在主机电脑的 cmd 运行

MysqL -h LinuxIP地址 -P 3306 -u root -p
#-P 大写P表示的是连接服务器端口号
# 回车后,输入MysqL 密码

# 远程登陆的要素:协议、地址(IP)、端口、用户、密码 (Linux远程登陆也是这样的要素)

方法二:用Navicat等图形化软件……

后记:如果所有都配置好了,但是远程连接不通,那可能是Linux防火墙的问题

# 方法一:让防火墙将 MysqL 端口对外开放(3306是 MysqL认端口号)
firewall-cmd --zone=public --add-port=3306/tcp --permanent

# 方法二:直接关掉防火墙(自己玩儿可以)
systemctl stop firewalld
# 关掉后再禁止它开机启动
systemctl disable firewalld
# 想恢复防火墙
systemctl enable firewalld
systemctl start firewalld

有什么疏漏请您多担待,欢迎您的斧正和批评。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。