zoukankan      html  css  js  c++  java
  • linux下配置mysql8

    下载需要的mysql8的安装包(本次我安装的8.0.18的安装包,不过差距不会很大,根据系统选择需要安装32位或64位)

    也可以通过网络路径直接下载(可以自行百度)

    https://dev.mysql.com/downloads/mysql/

    cd /usr/local/ (目录)

    tar -zxvf(xvf) mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz (解压)

    mv xxx mysql (改目录名)

    在mysql目录下创建data,用于存储数据

    cd /mysql/

    mkdir data

    创建 mysql 用户组和 mysql 用户

    groupadd mysql
     
    useradd -g mysql mysql

    给与数据目录权限

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

    改变 mysql 目录权限

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

    初始化数据库

    /usr/local/mysql/bin/mysqld --initialize --user=mysql

    初始化失败提示如下时

    执行如下,之后再输入一遍初始化命令

    yum install -y libaio

    初始化成功时,备份好自己的临时密码

    进行mysql的配置

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

    修改my.cnf文件

    vim  /etc/my.cnf

    [mysqld]
    socket=/tmp/mysql.sock
    datadir=/usr/local/mysql/data
    basedir=/usr/local/mysql
    user=mysql
    port=3306
    character-set-server=utf8
    #skip-grant-tables
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    # skip-grant-tables
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid

    ESC :wq 保存退出

    mysql服务添加到系统服务

    cp -a ./support-files/mysql.server /etc/init.d/mysqld
    
    chmod +x /etc/rc.d/init.d/mysqld    
    
    chkconfig --add mysqld

    之后配置全局环境变量

    vim /etc/profile

    在最后两行添加配置

    export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
    
    export PATH

    ESC :wq 保存退出

    使配置立刻生效

    source /etc/profile

    之后就可以启动mysql服务了

    cd /usr/local/mysql/support-files
    
    ./mysql.server start

    如果出现这个问题

    则创建对应的log文件,并给予权限再重启

    mkdir /var/log/mariadb 
    touch /var/log/mariadb/mariadb.log 
    chown -R mysql:mysql  /var/log/mariadb/

    启动成功

    登陆mysql

    mysql -uroot -p

     输入之前备份的临时密码

    首先得设置一个密码,不然会出现这个错误

     设置密码:

    alter user 'root'@'localhost' identified by 'Root@123456';
    // 更新
    flush privileges;

     由于mysql8以后的身份验证插件(caching_sha2_password)

     原来的身份验证插件为(mysql_native_password)

     现在一部分客户端工具还是mysql_native_password的身份验证,所以将加密规则还原成mysql_native_password才能登陆

     查看加密方式

    select user,plugin from user where user='root'; 

     先设置远程连接

    mysql>use mysql;
    
    mysql>update user set host='%' where user='root' limit 1;
    
    mysql>flush privileges;  (刷新)

     再更改加密方式

    mysql>use mysql;
     
    mysql>alter user 'root'@'%' identified with mysql_native_password by 'your password';

     修改新的密码

    mysql> ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
     
    mysql> flush privileges; (刷新)
    quit; (退出mysql)

    cd /usr/local/mysql/support-files

    .
    /mysql.server restart (重启)

    如果是端口问题的话可以查看端口是否对外开放,百度自行配置防火墙,因为使用的是阿里的安全组所以这些不需要我自己去配置

    欢迎指正错误

  • 相关阅读:
    weiPHP微信开发框架
    win7系统
    csdn博客频道
    一步一步安装Git控件版本工具
    php源码,php网站源码,php源码下载
    czz数据专家
    禁用了传说中的PHP危险函数之后,Laravel的定时任务不能执行了?
    php禁用函数设置及查看方法详解
    laravel项目thinksns-plus安装出现RuntimeException Symlink from * to * failed错误
    laravel框架使用中错误及解决办法总结
  • 原文地址:https://www.cnblogs.com/Crush123/p/14016254.html
Copyright © 2011-2022 走看看