美文网首页
Mysql8.0.15安装

Mysql8.0.15安装

作者: aker0215 | 来源:发表于2019-02-15 11:14 被阅读0次

    安装包下载

    官网下载包mysql安装包,我下的是社区版,解压到/usr/local/mysql

    新增用户组和用户

    groupadd mysql
    useradd -g mysql mysql
    

    修改属主

    chown -R mysql.mysql /usr/local/mysql/
    

    新增相关的mysql目录,并修改属主

    这不不要的话,安装会报没有某个目录的错,视情况创建

    /var/lib/mysql  
    /var/run/mariadb
    /var/log/mariadb
    

    数据库初始化

    --lower-case-table-names=1 用来指定表名不区分大小写
    --initialize-insecure 是不要密码的意思?建议不要用吧
    还有一些初始化的参数,详情参考官网说明

    bin/mysqld  --initialize --user=mysql --lower-case-table-names=1 --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
    

    初始化之后会分配一个root密码,注意记录,别忘了

    初始化如果用了“--lower-case-table-names=1”之后,一定要新建一个my.cnf文件,在这个文件里边也配置上lower-case-table-names=1,不然启动会报错:

    Different lower_case_table_names settings for server ('1') and data dictionary ('0').
    

    /etc/my.cnf
    /etc/mysql/my.cnf
    SYSCONFDIR/my.cnf
    放这几个位置都可以,参考官方文档:https://dev.mysql.com/doc/refman/8.0/en/option-files.html

    配置内容

    [mysqld]
    lower_case_table_names=1
    

    启动数据库用mysqld_safe

    /usr/local/mysql/bin/mysqld_safe
    

    如果不想每次操作都输入脚本的绝对路径的话,可以链接全局命令;也可以把bin目录加到环境变量,看个人喜好

    ln -s /usr/local/mysql/bin/mysql /usr/bin/
    ln -s /usr/local/mysql/bin/mysql_safe /usr/bin/
    ln -s /usr/local/mysql/bin/mysqld /usr/bin/
    ln -s /usr/local/mysql/bin/mysqld_safe /usr/bin/
    

    登录

    mysql -uroot -p
    或者
    mysql -S /var/lib/mysql/mysql.sock -h localhost -uroot -p 如果前者报“mysql.sock”错的话,主要看你“mysql.sock”放在哪了,mysql用户是不是有权限拿得到

    登录进去后,第一件事,修改root的密码,不然不让操作,密码自己定,建议不要太简单的,容易被猜到
    ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

    新增用户&赋予权限

    Mysql8将创建账户和赋予权限的操作分开了,不能像以前一样写在一起

    1. 创建账户
      create user '用户名'@'访问主机' identified by '密码';
    create user 'root'@'%' identified by '123456';
    
    1. 赋予权限(修改权限时在后面加with grant option)
      grant 权限列表 on 数据库 to '用户名'@'访问主机' ;
      “访问主机”填'%',意思就是所有ip都能远程访问,不想这样的话,请自行填上需要连接的具体ip地址
    grant all privileges on *.* to 'root'@'%' ;
    
    1. 刷新权限
      flush privileges;
    2. 修改密码加密方式
      官方文档说:

    In MySQL 8.0, caching_sha2_password is the default authentication plugin rather than mysql_native_password.

    但是有些客户端工具不支持“caching_sha2_password”,这个时候就得改下,不然连接的时候会提示不支持,新版客户端工具要是支持且使用没问题的话,可以忽略这段。
    新增用户或者修改密码,声明使用的加密方式:

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
    

    当然,你也可以把默认加密方式配置在my.cnf里边,或者在启动的时候带上启动参数。参考:官方文档

    [mysqld]
    default_authentication_plugin=mysql_native_password
    

    参考链接:

    官方8.0支持文档
    Linux安装mysql 8.0

    相关文章

      网友评论

          本文标题:Mysql8.0.15安装

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