美文网首页
CentOS7.5 安装 Mysql 5.7.24 步骤记录

CentOS7.5 安装 Mysql 5.7.24 步骤记录

作者: 码农家的蜗牛 | 来源:发表于2020-02-26 14:50 被阅读0次

    1. 下载 MySQL

    本文采用的Linux为是腾讯云 标准型S2 (1 核 1 GB) Centos 7.5 64位

    1.1 官网下载地址:

    https://dev.mysql.com/downloads/mysql/5.7.html#downloads

    1.2 选择64位的

    image

    1.3 说明

    该文档仅供参考,更多详细文档请查看官方文档

    https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html

    2. 上传文件并解压到安装目录

    2.1 使用xftp上传到指定目录 我的目录为

    /app/tool

    2.2 解压

    tar -zvxf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

    2.3 重命名

    mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql

    2.4 复制到指定目录

    cp -r mysql /usr/local/

    3. 添加用户组,用专门管理mysql,提高安全

    3.1 新建组

    groupadd mysql

    3.2 新建用户

    useradd -r -g mysql mysql

    4. 修改mysql目录权限

    4.1 进入mysql根目录

    cd /usr/local/mysql/

    4.2 修改拥有者为mysql用户

    chown -R mysql:mysql ./

    5. 配置mysql服务

    5.1 将mysql/support-files下的mysql.server 复制到 /etc/init.d/下并自定义为mysql

    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

    5.2 修改该服务

    vi /etc/init.d/mysql

    5.3 修改的内容

    basedir=/usr/local/mysql
    datadir=/usr/local/mysql/data
    

    6. 配置mysql的配置文件

    在/etc/ 下新建my.cnf ,有些可能会提示已经存在,因为默认装的数据库配置文件也在,直接覆盖就行

    6.1 进入etc目录

    cd /etc

    6.2 删除my.cnf

    rm -rf my.cnf

    6.3 新建my.cnf

    vi my.cnf

    6.4 编辑的内容

    # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
    # *** default location during install, and will be replaced if you
    # *** upgrade to a newer version of MySQL.
    [client]
    port = 3306
    default-character-set=utf8
    
    [mysqld]
    # 一般配置选项
    basedir = /usr/local/mysql
    datadir = /usr/local/mysql/data
    port = 3306
    character-set-server=utf8
    default_storage_engine = InnoDB
    
    # NO_AUTO_VALUE_ON_ZERO 参数是允许自增id 从 0开始, 不设置这个参数, 自增ID 从1开始
    sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    

    7. 初始化数据库

    7.1 进入mysql/bin目录下

    cd /usr/local/mysql/bin/

    7.2 执行初始化

    ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

    7.3 遇到错误

    ./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory

    7.4 执行以下命令

    yum -y install numactl.x86_64

    7.5 再执行初始化

    ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

    7.6 遇到错误

    ./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

    7.7 执行以下命令

    yum -y install libaio

    7.8 再执行初始化

    ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

    7.9 执行完毕后会自动生成默认的密码在执行记录中,注意复制出来

    image

    8. 启动mysql服务

    8.1 执行启动命令

    service mysql start

    8.2启动成功会提示 SUCCESS

    9. 登录及远程配置

    9.1 登录

    进入mysql/bin目录下执行

    ./mysql -uroot -p

    9.2 输入密码

    Enter password:输入默认的临时密码

    9.3 修改密码

    mysql> set password=password('新密码');

    9.4 设置远程访问

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '访问密码';

    mysql> flush privileges;

    9.5 开放端口(云服务器需到控制台处理)

    9.5.1 开启端口

    firewall-cmd --zone=public --add-port=3306/tcp --permanent

    9.5.2 重载防火墙

    firewall-cmd --reload

    10. 设置开机启动和环境变量(可以忽略)

    10.1 查看自启服务列表

    chkconfig --list

    10.2 添加mysql服务到自启服务

    chkconfig --add mysql

    10.3 设置自启

    chkconfig mysql on

    11. 环境变量

    11.1 为了不用在mysql/bin目录下才能连接mysql 将mysql/bin目录设置到环境变量中

    vi /etc/profile

    11.2 在最后追加的内容

    # mysql environment
    export MYSQL_HOME=/usr/local/mysql
    export PATH=$PATH:$MYSQL_HOME/bin
    

    11.3 更新环境变量

    source /etc/profile

    另外附上一些用户权限相关操作的SQL语句

    创建用户
    • 创建了一个名为:test 密码为:1234 的用户
      mysql> create user 'test'@'localhost' identified by '1234';
    查询用户
    • 查询用户
      mysql> select user,host from mysql.user;
    删除用户
    • 删除用户“test”
      mysql> drop user test@localhost ;
    • 若创建的用户允许任何电脑登陆,删除用户如下
      mysql> drop user test@'%';
    更改密码
    • 方法1,密码实时更新;修改用户“test”的密码为“1122”
      mysql> set password for test =password('1122');
    • 方法2,需要刷新;修改用户“test”的密码为“1234”
      mysql> update mysql.user set password=password('1234') where user='test';
    • 刷新
      mysql> flush privileges;
    授予权限
    • 授予用户test通过外网IP对数据库“testdb”的全部权限
      mysql> grant all privileges on 'testdb'.* to 'test'@'%' identified by '1234';

    • 刷新权限
      mysql> flush privileges;

    • 授予用户“test”通过外网IP对于该数据库“testdb”中表的创建、修改、删除权限,以及表数据的增删查改权限
      mysql> grant create,alter,drop,select,insert,update,delete on testdb.* to test@'%';

    查看用户权限
    • 查看用户“test”的相关权限
      mysql> show grants for test;

    相关文章

      网友评论

          本文标题:CentOS7.5 安装 Mysql 5.7.24 步骤记录

          本文链接:https://www.haomeiwen.com/subject/jysvchtx.html