• 【MySQL】如何在Linux上安装MySQL



    在这里插入图片描述

    🐌个人主页: 🐌 叶落闲庭
    💨我的专栏:💨
    c语言
    数据结构
    javaEE
    操作系统
    Redis

    石可破也,而不可夺坚;丹可磨也,而不可夺赤。


    一、准备Linux服务器

    • 云服务器或者虚拟机都可以
    • Linux版本为CentOS7

    二、下载Linux版MySQL安装包

    官网:https://downloads.mysql.com/archives/community/
    选择对应的版本

    • Product Version:8.0.33
    • Operating System:Red Hat Enterprise Linux Oracle Linux
    • OS Version:Red Hat Enterprise Linux 7 Oracle Linux 7 (x86,64-bit)

    在这里插入图片描述


    在这里插入图片描述


    三、上传MySQL安装包

    3.1 通过XShell7直接将安装拖到Linux目录上


    在这里插入图片描述


    3.2 在root用户的家目录下创建mysql文件夹(保存解压文件)

    mkdir mysql
    
    • 1

    在这里插入图片描述


    3.3 解压

    tar -xvf mysql-8.0.33-1.el7.x86_64.rpm-bundle.tar -C mysql
    
    • 1

    执行这条命令将压缩包解压并存放到mysql文件夹中


    在这里插入图片描述


    • 查看解压文件:
    cd mysql/
    
    • 1
    ll
    
    • 1

    在这里插入图片描述


    可以看到,解压出来的安装包都是rpm为后缀的安装包,接下来就开始安装这些rpm包了

    四、安装rpm安装包

    切换到mysql目录下,因为对于rpm的包资源管理器来说,它是不会处理它们的依赖关系的,所以要按照一定的顺序安装,依次执行如下命令:

    cd mysql/
    
    • 1
    rpm -ivh mysql-community-common-8.0.33-1.el7.x86_64.rpm 
    
    • 1
    rpm -ivh mysql-community-client-plugins-8.0.33-1.el7.x86_64.rpm
    
    • 1
    rpm -ivh mysql-community-libs-8.0.33-1.el7.x86_64.rpm
    
    • 1

    注意:在执行第三条rpm指令时,可能会报与Linux自带的mariadb冲突的错误,错误提示如下:

    • `warning: mysql-community-libs-8.0.33-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY error: Failed dependencies:
    • mariadb-libs is obsoleted by mysql-community-libs-8.0.33-1.el7.x86_64

    此时执行rpm -e mariadb-libs --nodeps语句,然后再执行第三条rpm指令即可

    rpm -ivh mysql-community-libs-compat-8.0.33-1.el7.x86_64.rpm 
    
    • 1
    rpm -ivh mysql-community-devel-8.0.33-1.el7.x86_64.rpm 
    
    • 1
    • 注意:在执行第五条rpm指令时,会报一个依赖检测失败的错误,需要一个pkgconfig(openssl)的依赖,此时就需要安装这个依赖,执行指令yum install openssl-devel进行安装,之后再执行第五条指令即可

    安装客户端:

    rpm -ivh mysql-community-client-8.0.33-1.el7.x86_64.rpm
    
    • 1

    安装服务端:

    rpm -ivh mysql-community-server-8.0.33-1.el7.x86_64.rpm --nodeps --force
    
    
    • 1
    • 2

    • 具体操作:

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    五、启动MySQL服务

    • 启动服务:
    systemctl start mysqld
    
    • 1
    • 重启服务:
    systemctl restart mysqld
    
    • 1
    • 关闭服务:
    systemctl stop mysqld
    
    • 1

    在这里插入图片描述


    • 查询自动生成的root用户密码:
    cat /var/log/mysqld.log 
    
    • 1

    在这里插入图片描述


    • 完成mysql登录:
    mysql -uroot -p
    
    • 1

    在这里插入图片描述

    • 修改MySQL密码:

    打开MySQL官方文档:https://dev.mysql.com/doc/refman/8.0/en/
    搜索validate_password查看


    在这里插入图片描述


    • 密码校验的信息:

    在这里插入图片描述


    在这里插入图片描述


    • 设置校验规则:
    • 设置之前需要先设置一个符合原校验规则(即长度为8位,包含数据、字母大小写和特殊字符)的密码,再执行如下指令:
    set global validate_password.policy = 0;
    
    
    • 1
    • 2
     set global validate_password.length=4;
    
    • 1

    设置完上述指令后,即可设置简单密码(如1234)

    六、创建用户

    默认的root用户只能当前节点1oca1host访问,是无法远程访问的,我们还需要创建一个root账户,用户远程访问(在所有主机上均可访问)

     create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '1234';
    
    • 1
    • 分配权限(所有)
    grant all on *.* to 'root'@'%';
    
    
    • 1
    • 2
    • 远程连接,这里使用DataGrip演示:
      • 1.添加数据库:

    在这里插入图片描述

      • 2.输入Linux的ip地址,输入mysql用户名和密码

    在这里插入图片描述


    注意:这里可能会提示连接失败,需要查看Linux的防火墙是否开启了3306端口的监听

    • Linux防火墙检查3306端口:
    netstat -tunlp | grep 3306 
    
    • 1
    • 配置防火墙规则:
    firewall-cmd --permanent --add-port=3306/tcp 
    
    • 1
    firewall-cmd --reload 
    
    • 1

    此时,还要注意mysql的时区设置:

    • 检查Linux中mysql的时区:
    show variables like '%time_zone%';
    
    • 1
    • 设置时区:
    set global time_zone = '+8:00';
    
    • 1

    重启mysql后再次检查,完成即可,此时进行远程连接,提示成功连接


    在这里插入图片描述


  • 相关阅读:
    Android 读取string.xml到EXCEL表格
    【JavaSE】初识泛型
    2019庐阳区(试卷及题解)
    第八章 互联网上的音频视频服务 | 计算机网络(谢希仁 第八版)
    【微信小程序】用painter插件生成海报分享朋友圈简单教程
    一文搞懂如何求MOS管的等效阻抗
    Python3 运算符
    arduino + ov7670实现拍照
    leetcode练习
    learning to rank 学习排名系统综述
  • 原文地址:https://blog.csdn.net/qq_64743563/article/details/133853792