• Installing MySQL-5.7.35 on CentOS 7.9


    一、Installation MySQL-5.7.35 on CentOS 7.9

    1 下载地址

    2 mysql-5.7.35 安装包上传到linux服务器

    使用Xftp 或者 wget 在服务器上下载

    ### 推荐使用wget
    yum install -y wget
    wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz

    3 检查系统是否安装过mysql,如果没有略过此步骤

    [root@ecs-65685 ~]# rpm -qa|grep mysql

    没有任何输出说明没有安装过mysql!

    如果系统自带mysql,查询所有mysql 对应的文件夹,全部删除,使用命令

    whereis mysql
    find / -name mysql
    rpm -qa| grep mysql
    来查看所有mysql关联的目录,然后全部删除。

    4 卸载CentOS7系统自带mariadb

    查看系统自带的Mariadb,没有略过此步骤

    rpm -qa|grep mariadb

    卸载系统自带的Mariadb

    因为centos7自带的mariadb 与mysql冲突,所以需要先卸载

    yum remove mariadb-libs -y

    5 删除etc目录下的my.cnf

    查看 /etc 目录下有没有 my.cnf 文件,如果有,删除

    6 创建用户和组

    useradd mysqlxyz -s /sbin/nologin
    id mysqlxyz
     

    二、创建目录,并解压

    1 创建软件目录
    mkdir -p /opt/mysqlxyz/database
    2 创建数据目录
    mkdir -p /opt/mysqlxyz/data
    3 创建日志目录
    mkdir -p /opt/mysqlxyz/binlog
    4 设置权限
    chown -R mysqlxyz.mysqlxyz /opt/mysqlxyz/database /opt/mysqlxyz/data /opt/mysqlxyz/binlog
     

    5 解压安装mysql安装包到 /opt/mysqlxyz/database/ 目录下

    tar -zxvf mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz -C /opt/mysqlxyz/database/
     6 名字太长,修改为 mysql-5.7.35
    cd /opt/mysqlxyz/database
    mv mysql-5.7.35-linux-glibc2.12-x86_64/ mysql-5.7.35

    7 更改 mysql-5.7.35 目录下所有文件夹所属的用户组、用户以及权限

    cd /opt/mysqlxyz/database/mysql-5.7.35
    chown -R mysqlxyz. *

     

    三、设置环境变量

    vim /etc/profile
    export PATH=$PATH:/opt/mysqlxyz/database/mysql-5.7.35/bin
    source /etc/profile
    查看版本
    mysql -V

     

    四、安装 mysql-5.7.35

    1 初始化系统库表(带有临时密码

    mysqld --initialize --user=mysqlxyz --basedir=/opt/mysqlxyz/database/mysql-5.7.35 --datadir=/opt/mysqlxyz/data

    初始化系统库表(密码为空

    mysqld --initialize-insecure --user=mysqlxyz --basedir=/opt/mysqlxyz/database/mysql-5.7.35 --datadir=/opt/mysqlxyz/data

    3 联网状态或者有yum源可以直接安装缺失的包文件
    yum install libncurses* -y

    4 再次执行
    ### 
    cd /opt/mysqlxyz/data
    ### 
    mysqld --initialize-insecure --user=mysqlxyz --basedir=/opt/mysqlxyz/database/mysql-5.7.35 --datadir=/opt/mysqlxyz/data
    
    ### 安装多个mysql 把 --datadir 修改下即可,还有端口

    3 配置文件设置,默认在此路径 /etc/my.cnf
    ### 
    cat > /etc/my.cnf << EOF
    [mysqld]
    user=mysqlxyz
    basedir=/opt/mysqlxyz/database/mysql-5.7.35
    datadir=/opt/mysqlxyz/data
    port=3306
    socket=/tmp/mysql57.sock
    server_id=6
    [mysql]
    socket=/tmp/mysql57.sock
    [client]
    socket=/tmp/mysql57.sock
    EOF

    4 启动脚本
    ###
    cd /opt/mysqlxyz/database/mysql-5.7.35/support-files/
    
    ### 将服务文件拷贝到init.d下,并重命名为mysql
    cp mysql.server /etc/init.d/mysqld
    ### 赋予可执行权限 可省略
    chmod +x /etc/init.d/mysqld
    
    ### 添加服务
    chkconfig --add mysqld
    ### 显示服务列表
    chkconfig --list
    ### 启动mysql
    systemctl start mysqld

    5 使用 mysqladmin 修改密码
    mysqladmin -uroot -p password iyuyi.xyz@gamil.com
    mysql -uroot -p

     

    五、开放远程连接

    localhost修改为%,使用远程连接

    ###
    use mysql;
    select user, host from user;
    update user set host = '%' where user = 'root';
    flush privileges;
     
    允许远程连接 授权
    ###
    use mysql;
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'iyuyi.xyz@gamil.com' WITH GRANT OPTION;
    
    ### 最好刷新一下权限,不刷新有可能也能生效
    flush privileges;

     

    六、防火墙

    ### 关闭防火墙
    systemctl stop firewalld
    
    ### 开放3306端口命令
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    ### 配置立即生效
    firewall-cmd --reload

    云主机需配置安全组

    在入方向规则,允许3306放行

    navicat连接

     

    X、One Step Success

     

    Y、Error message

     

    Z、Related Links

    Installation MySQL-8.0.28 on CentOS 8.3:https://www.cnblogs.com/huaxiayuyi/p/16857766.html

    MySQL-8.0.28 Cluster Deployment One-Master Multi-Slave:https://www.cnblogs.com/huaxiayuyi/p/16859506.html

     

  • 相关阅读:
    AI 绘画 | Stable Diffusion 涂鸦功能与局部重绘
    windbg查看模块中的方法时报错no code found
    功率放大器在磁性微纳米颗粒微流体操控研究中的应用
    AntDesign - UI -vue 列表表单验证,多条数据验证,正则验证,正则提示
    MySQL热点行更新
    MySQL的Undo Log、Redo Log和Binlog
    L1-028 判断素数
    GIN框架:自定义结构体到出JSON格式
    【博客492】使用iptables trace跟踪iptables流量
    5.37 BCC工具之uflow.py解读
  • 原文地址:https://www.cnblogs.com/huaxiayuyi/p/16758720.html