zoukankan      html  css  js  c++  java
  • MySql 5.7.26(MySQL8)安装教程

    近期更换服务器,在此再记录一遍mysql 安装教程

    1.下载

    https://cdn.mysql.com//Downloads/MySQLInstaller/mysql-installer-community-5.7.26.0.msi

    可以用迅雷下载,速度会快一点,我的一篇博客有介绍:Oracle旗下软件官网下载速度过慢解决办法

    2.安装

    双击运行程序

     i accept -> next

     

    选择 custom 自定义

     

    根据自己系统位数选择

    点击刚才选择的版本,进行自定义安装位置->next

    点击Execute,安装必要控件

     I agree -> install

     

    会发现在前面有一个勾->next

     

     

     

    选择服务器专用

    设置端口号,默认3306,可以根据自己需求修改

    选择强加密或者以前加密方式

    (这里得看自己使用的是什么版本的Navicat,如果以后使用的是低版本的,则选择下面那个,使用以前的加密方式;如果使用最新版本的Navicat,则可以选择强加密方式)

    设置密码

     设置服务器名称,一般默认即可

    Execute

     可能需要等待一段时间

    都检测通过后 点击Finish 然后继续Next 最后Finish即安装完成

    如果中间发生错误,可能你的数据库版本高 与本系统不适配 可以降低数据库版本 或者升级系统版本

     


    配置:

    打开my.ini文件,建议使用Notepad++,默认位置:

    C:ProgramDataMySQLMySQL Server 8.0(这里ProgramData是隐藏文件夹,得先打开查看隐藏文件夹)

    修改innodb_flush_log_at_trx_commit为0:

    innodb_flush_log_at_trx_commit=0

    修改innodb_buffer_pool_size为1G:(我这里服务器是2G内存)

    innodb_buffer_pool_size=1G

    数值一般修改为实际内存的一半即可

    修改数据库编码为UTF8

    [client] 下添加default-character-set=utf8

    [client] 
    default-character-set=utf8 

    [mysqld]下添加character-set-server=utf8

    [mysqld]
    character-set-server=utf8

    重启My SQL服务


    远程连接时发现报host * is not allowed to connect to this mysql server错误的话

    命令行切换到目录mysql 安装文件夹bin下

    运行mysql -uroot -p,输入密码

    mysql -uroot -p

    执行

    use mysql;

    执行

    update user set host = '%' where user = 'root';

    执行(刷新权限)

    FLUSH PRIVILEGES;

    可以查询一下看一下结果:

    select host from user where user = 'root';

    查看看是否修改成功


    如果使用的是低版本的Navicat,可能会报

    Authentication plugin 'caching_sha2_password' cannot be loaded错误

    出现这个原因是(也就是上面安装的时候选择的加密方式问题)

    mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,

    解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password.

    这里介绍第二种方法:

    命令行切换到目录mysql 安装文件夹bin下

    运行mysql -uroot -p,输入密码

    mysql -uroot -p

    1.修改加密规则

    如果没有执行过我上面说的远程连接修改的

    update user set host = '%' where user = 'root';

    的执行下面语句

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; 

    如果已经做了修改的

    执行下面语句

    ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; 

    password 替换为自己的密码即可

    2.修改密码

    同上,未执行过修改的

    执行下面语句

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

    执行过修改的

    执行下面语句

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

    password 替换为自己的密码即可

    3.刷新权限

    FLUSH PRIVILEGES;  

    4.重置一下密码

    同上,未执行过修改的

    执行下面语句

    alter user 'root'@'localhost' identified by '你的密码';

    执行过修改的

    执行下面语句

    alter user 'root'@'%' identified by '你的密码';

    结束

  • 相关阅读:
    POST数据中有特殊符号导致数据丢失的解决方法
    Javascript中bind()方法的使用与实现
    Vue插件写、用详解(附demo)
    js自定义事件、DOM/伪DOM自定义事件
    对象可枚举和不可枚举属性
    js 数组 map方法
    Java源码学习(JDK 11)——java.util.concurrent.CopyOnWriteArrayList
    Java源码学习(JDK 11)——java.util.Collections
    Java源码学习(JDK 11)——java.util.Arrays
    Java源码学习(JDK 11)——java.lang.Collection
  • 原文地址:https://www.cnblogs.com/zktww/p/11532915.html
Copyright © 2011-2022 走看看