• Linux安装MySQL服务8.0.11版本


    一、查看是否已经安装

    1. # 查看
    2. rpm -qa | grep mysql
    3. # 有的话可以这么删除
    4. rpm -e 文件名称

    二、安装

    1、下载官方MySQL安装包 MySQL :: Download MySQL Community Server (Archived Versions)

    2、上传解压(解压后可删除安装包,节省空间)

    1. # 可以解压到/usr/local/目录下
    2. cd /usr/local/
    3. tar -zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
    4. # 重命名文件夹
    5. mv mysql-8.0.11-linux-glibc2.12-x86_64 mysql

    3、检查是否有mysql用户组和mysql用户,没有就添加

    1. # 检查
    2. groups mysql
    3. # 添加
    4. groupadd mysql && useradd -r -g mysql mysql

    4、创建数据目录并赋予权限

    1. mkdir -p /data/mysql
    2. chown mysql:mysql -R /data/mysql

    5、修改配置文件 vim /etc/my.cnf(没有就新建) 

    1. [mysqld]
    2. bind-address=0.0.0.0
    3. port=3306
    4. user=mysql
    5. basedir=/usr/local/mysql
    6. datadir=/data/mysql
    7. socket=/tmp/mysql.sock
    8. log-error=/data/mysql/mysql.err
    9. pid-file=/data/mysql/mysql.pid
    10. # character config
    11. character_set_server=utf8mb4
    12. symbolic-links=0
    13. explicit_defaults_for_timestamp=true

    6、初始化

    1. cd /usr/local/mysql/bin/
    2. ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

    7、可以查看初始密码 

    cat /data/mysql/mysql.err

    8、启动mysql

    1. cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
    2. service mysql start

    三、修改密码

    1、开启免密码登陆,修改my.cnf文件,默认在/etc/my.cnf。

    vim /etc/my.cnf  在 [mysqld] 模块下面添加:skip-grant-tables 保存退出。

    2、重启服务,使配置生效。

    service mysql restart

    3、登陆 /usr/local/mysql/bin/mysql -u root -p 回车

    // 不输入密码直接敲回车键

    4、刷新规则允许外部访问

    1. # 选择访问mysql库
    2. use mysql;
    3. # 使root能再任何host访问
    4. update user set host='%' where user='root';
    5. # 刷新
    6. FLUSH PRIVILEGES;

    5、修改密码

    1. ALTER USER "root"@"%" IDENTIFIED BY "daiyp123456";
    2. FLUSH PRIVILEGES;

    6、退出 \q

    把/etc/my.cnf免密配置删掉

    重启服务 service mysql restart

    7、再次登陆 /usr/local/mysql/bin/mysql -uroot -p密码

    四、创建用户并授权

    1、创建新用户

    1. CREATE USER 'test'@'%' IDENTIFIED BY 'daiyp123';
    2. # 上面@后的命令解释
    3. '%' - 所有情况都能访问
    4. 'localhost' - 本机才能访问
    5. '111.222.33.44' - 指定 ip 才能访问

    2、给用户授权

    1. grant all on 数据库名.数据库表 to 用户名@'%';
    2. # 对上面语句的扩展
    3. all 可以替换为 select,delete,update,create,drop
    4. 数据库名 所有的 用*
    5. 数据库表 所有的 用*

  • 相关阅读:
    中国34省级行政区及行政区划代码
    191.回溯算法:组合总和|||(力扣)
    最新uniApp微信小程序获取头像open-type=“chooseAvatar“ @chooseavatar方法
    笔记1.4 计算机网络性能
    Android ContentProvider
    【PAT(甲级)】1067 Sort with Swap(0, i)(附解题思路)
    slf4j简介说明
    C++中常用数组及几种数组定义方式
    Netty源码分析:服务器启动跟踪,nioeventloop 剖析,accept、read 事件跟踪
    零售数据分析师熬夜整理:人、货、场、供、财这样做
  • 原文地址:https://blog.csdn.net/sosemseo/article/details/127667251