CentOS7.X yum安装MySQL

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: CentOS7.X yum安装MySQL

yum安装mysql

  1. 安装前的准备

    yum install \
    vim \
    wget \
    -y
  2. 获取源码资源包

    wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
  3. 安装源码资源包

    rpm -ivh mysql57-community-release-el7-10.noarch.rpm
  4. 通过资源包安装mysql

    yum install mysql-server -y
  5. 修改my.conf

    vim /etc/my.cnf
    
    [client]
    default-character-set = utf8mb4
    
    [mysql]
    default-character-set = utf8mb4
    
    [mysqld]
    datadir=/data/mysql
    character-set-server=utf8mb4
    init_connect='SET NAMES utf8mb4'
    collation-server=utf8mb4_unicode_ci
    character-set-client-handshake=FALSE
    
    symbolic-links=0
    log-error=/var/log/mysqld.log
    socket=/var/lib/mysql/mysql.sock
    pid-file=/var/run/mysqld/mysqld.pid
    secure_file_priv=/var/lib/mysql-files
    
    server-id=1
    binlog-format=Row
    log-bin=/data/mysql/mysql-bin
    sql-mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    
    ESC
    :wq
  6. 创建数据文件目录、所属组、用户改为mysql

    mkdir /data
    mkdir /data/mysql
    chown -R mysql:mysql /etc/my.cnf
    chown -R mysql:mysql /data/mysql/
    chown -R mysql:mysql /var/*/mysql*
  7. 修改SELinux

    vim /etc/sysconfig/selinux
    
    SELINUX=permissive
    
    ESC
    :wq
    
    setenforce 0
  8. 启动数据库,生成socket文件

    systemctl enable mysqld
    systemctl start mysqld
    # 因为配置文件中指定了
    log-error=/var/log/mysqld.log
    # 所以初始密码在如下文件中
    /var/log/mysqld.log
    cat /var/log/mysqld.log|grep password
    # 结果显示
    A temporary password is generated for root@localhost: **************
  9. 修改数据库初始密码

    mysql -u root -p
    # 输入原始密码
    **************
    # 设置允许使用弱密码
    SET GLOBAL validate_password_policy=0;
    ALTER USER 'root'@'localhost' IDENTIFIED BY '**************';
    GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'%' IDENTIFIED BY '**************' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    QUIT;
  10. 初始化数据库(除了密码一律选择Y)

    # 如果是数据库【安装】则只执行下面这步
    mysql_secure_installation
    
    # 如果是数据库【升级】则只执行下面这步(**************表示数据库之前的密码)
    mysql_upgrade -u root -p
    **************
  11. 配置防火墙

    systemctl enable firewalld
    systemctl start  firewalld
    firewall-cmd --permanent --zone=public --add-port=3306/tcp
    firewall-cmd --reload
  12. 测试启动、停止、重启mysql

    #启用并启动
    systemctl enable mysqld
    systemctl start mysqld
    #禁用并关闭
    systemctl disable mysqld
    systemctl stop mysqld
    #启用并重新启动
    systemctl enable mysqld
    systemctl restart mysqld
  13. 设置外部访问密码

    # 数据库名-通配符及格式:
        *[允许操作所有数据库]
        %pay%[允许操作名字包含'pay'的数据库]
        mydatabase[仅允许操作'mydatabase'数据库]
    # 表名-通配符及格式:
        *[允许操作所有表]
        %pay%[允许操作名字包含'pay'的表]
        mytable[仅允许操作'mytable'表]
    # ip地址-通配符及格式:
        %/0.0.0.0[允许任意IP访问]
        xxx.xxx.xxx.xxx[仅限公网访问]
        192.168.x.xxx[仅限局域网访问]
        localhost/127.0.0.1/::1[仅限本机访问]
    
    # 数据库授权格式
    GRANT 权限名 ON 数据库名.数据表名 TO '数据用户'@'访问IP' IDENTIFIED BY '用户密码' WITH GRANT OPTION;
    
    # 为任意数据库表 任意操作 分配root用户,仅限本地访问
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '**************' WITH GRANT OPTION;
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY '**************' WITH GRANT OPTION;
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'::1' IDENTIFIED BY '**************' WITH GRANT OPTION;
    
    # 为任意数据库表 任意操作 分配mysql用户,任意IP访问(安装调试阶段、本地开发使用,用后即删)
    GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'%' IDENTIFIED BY '**************' WITH GRANT OPTION;
    
    # 为任意数据库表 增删改查 分配单独用户,为不同的业务分配专属用户
    GRANT INSERT ON *.* TO 'insert1'@'127.0.0.1' IDENTIFIED BY '**************' WITH GRANT OPTION;
    GRANT DELETE ON *.* TO 'delete1'@'127.0.0.1' IDENTIFIED BY '**************' WITH GRANT OPTION;
    GRANT UPDATE ON *.* TO 'update1'@'127.0.0.1' IDENTIFIED BY '**************' WITH GRANT OPTION;
    GRANT SELECT ON *.* TO 'select1'@'127.0.0.1' IDENTIFIED BY '**************' WITH GRANT OPTION;
    
    # 刷新权限
    FLUSH PRIVILEGES;
  14. 领支付宝红包支持作者

    扫码领支付宝红包

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
7天前
|
存储 分布式计算 Hadoop
Centos7.9安装kerberos
Centos7.9安装kerberos
56 25
|
2天前
|
存储 Shell 网络安全
Centos7.9安装openldap
Centos7.9安装openldap
39 16
|
3天前
|
数据可视化 Linux 应用服务中间件
Centos7.9安装phpldapadmin
Centos7.9安装phpldapadmin
36 15
|
8天前
|
缓存 Linux
CentOS-6的iso下载地址镜像yum源
通过上述步骤,您可以成功下载CentOS 6的ISO镜像文件,并配置适用于CentOS 6的YUM源。尽管CentOS 6已经停止更新,但使用这些镜像和YUM源配置,可以继续在需要的环境中使用和维护CentOS 6系统。
67 20
|
14天前
|
安全 关系型数据库 MySQL
CentOS7仅安装部署MySQL80客户端
通过上述步骤,你可以在CentOS 7上成功安装并配置MySQL 8.0客户端。这个过程确保你能够使用MySQL客户端工具连接和管理远程的MySQL数据库,而不需要在本地安装MySQL服务器。定期更新MySQL客户端可以确保你使用的是最新的功能和安全修复。
94 16
|
6天前
|
网络协议 Java 应用服务中间件
centos7环境下tomcat8的安装与配置
本文介绍了在Linux环境下安装和配置Tomcat 8的详细步骤。首先,通过无网络条件下的文件交互软件(如Xftp 6或MobaXterm)下载并解压Tomcat安装包至指定路径,启动Tomcat服务并测试访问。接着,修改Tomcat端口号以避免冲突,并部署Java Web应用项目至Tomcat服务器。最后,调整Linux防火墙规则,确保外部可以正常访问部署的应用。关键步骤包括关闭或配置防火墙、添加必要的端口规则,确保Tomcat服务稳定运行。
|
19天前
|
Linux
CentOs9 yum源出现404问题
CentOs9-stream yum源出现404问题
|
1月前
|
缓存 Linux
解决CentOS 7停止更新后yum源失效问题【图文教程】
以上步骤完成后,你的 CentOS 7 系统就会使用阿里云的 yum 源,更换yum以后就可以正常使用啦。
1273 2
|
2月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第16天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括配置系统源、安装 SQL Server 2019 软件包以及数据库初始化,确保 SQL Server 正常运行。
117 4
|
2月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
144 1