zoukankan      html  css  js  c++  java
  • Centos7Yum安装Mysql8

    1、去官网下载rpm文件,该文件专门用于yum安装方式:

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

    然后拉到最下面,我下载的是第一个:Red Hat Enterprise Linux 7 / Oracle Linux 7 (Architecture Independent)

     

    2、下载好rpm文件之后使用FTP传到服务器,yum安装该文件

    yum -y install mysql80-community-release-el7-1.noarch.rpm

     

    3、安装MySQL服务器

     yum -y install mysql-community-server

     

    4、安装完成之后启动MySQL服务,这边提示下centOS7以下的版本用的是service命令,centOS7开始需要使用systemctl命令。

    #启动MySQL服务
    systemctl start  mysqld.service

     

    5、查看运行状态

    systemctl status mysqld.service

     

    6、查询MySQL密码

    grep "password" /var/log/mysqld.log

     

    7、设置MySQL密码

    用刚刚查询到的密码登录MySQL

    mysql -uroot -p
    //大写字母、数字、符号的结合(新的加密方式)
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '
    Rmdb-3897'; 

     

     8、如果要使用Navicate或者PhpMyAdmin远程连接数据库,可以新建一个用户,并开启远程连接

    创建用户:

    CREATE USER 'xxx'@'%' IDENTIFIED WITH mysql_native_password BY 'xxx123456@';

    授权远程数据库:

     #授权所有权限 
    GRANT ALL PRIVILEGES ON *.* TO 'xxx'@'%';
    #授权基本的查询修改权限,按需求设置
    GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'xxx'@'%';

    查看用户权限

    show grants for 'xxx'@'%';

    如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码 

    GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 
    'mypassword' WITH GRANT OPTION; 

    最后刷新权限

    FLUSH PRIVILEGES; 

     

    Laravel的坑:

    1、Authentication type:
    用户的 Authentication type 默认为 caching_sha2_password,导致数据库连接错误,抛出如下异常:
    IlluminateDatabaseQueryException : SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client

    解决方案:修改密码认证方式
    ALTER USER 'YOURUSERNAME'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YOURPASSWORD';

     

    2、删除了 NO_AUTO_CREATE_USER 模式
    在 5.7.*的日志中提到已废除该模式,在8.0.11中删除了,迁移时会抛出如下异常:
    IlluminateDatabaseQueryException : SQLSTATE[42000]: Syntax error or access violation: 1231 Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'

    解决方案:将 config/database.php 配置文件中mysql 的 strict 的值改为false即可!

     

    参考文章:通过yum源在centOS7安装mysql8

  • 相关阅读:
    linux 操作命令
    Linux 安装问题
    margin和text-align实现水平居中的区别
    javascript关键字typeof、instanceof、constructor判断类型
    jquery经常用到的代码段
    Ubuntu安装Chrome浏览器及解决启动no-sandbox问题
    github基本使用---从零开始
    Jquery的load加载本地文件出现跨域错误的解决方案
    meta标签中设置以极速模式打开网页
    原生js动态创建文本内容的几种方式
  • 原文地址:https://www.cnblogs.com/lamp01/p/10102027.html
Copyright © 2011-2022 走看看