MySQL 8.0 Windows zip 使用手册

前言

mysql8之后,即使是zip包,安装和使用步骤也有所不同。

使用步骤

  1. 下载mysql win64 zip包 https://dev.mysql.com/downloads/mysql/ ,目前我下载到的版本是mysql-8.0.17-winx64
  2. 解压zip包到软件目录,例如我的安装目录是C:\SWDTOOLS\mysql-8.0.17-winx64
  3. 在安装目录下新建一个 my.ini 默认配置文件(C:\SWDTOOLS\mysql-8.0.17-winx64\my.ini)。
[mysqld]
# These are commonly set, remove the # and set as required.
basedir = C:\SWDTOOLS\mysql-8.0.17-winx64
datadir = C:\SWDTOOLS\mysql-8.0.17-winx64\data
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
character-set-server = utf8mb4
performance_schema_max_table_instances = 600
table_definition_cache = 400
table_open_cache = 256
[mysql]
default-character-set = utf8mb4
[client]
default-character-set = utf8mb4
  1. 打开cmd, cd /d C:\SWDTOOLS\mysql-8.0.17-winx64\bin 切换到安装目录下的 bin 目录
  2. 输入 mysqld --initialize --console 初始化数据库,请留意root@localhost: GM;i=g;Ps9>y部分,分号后面GM;i=g;Ps9>y的那串就是密码,可以COPY下来保存。
2019-07-25T07:13:48.121669Z 0 [Warning] [MY-010915] [Server] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
2019-07-25T07:13:48.121784Z 0 [System] [MY-013169] [Server] C:\SWDTOOLS\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server in progress as process 18336
2019-07-25T07:13:52.976051Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: GM;i=g;Ps9>y
2019-07-25T07:13:54.597278Z 0 [System] [MY-013170] [Server] C:\SWDTOOLS\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server has completed
  1. 运行MYSQL,直接运行bin下面的mysqld.exe,即可
  • (可选)或者mysqld --install mysql8进行安装,安装后系统会有个叫mysql8服务,当然这个服务名可以自己定制,修改最后一个参数即可。
  1. 运行 mysql -uroot -p ,输入刚才保存的密码即可登陆进去mysql命令行界面
    在这里插入图片描述
  2. 输入 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root123456'; 即可把root密码修改为root123456
    在这里插入图片描述
  3. 使用DBever或者Navicat等SQL工具连接数据库。
    在这里插入图片描述

Public Key Retrieval is not allowed问题

如果你也遇到了这个问题,请看该解决方案

如果用户使用了 sha256_password 认证,密码在传输过程中必须使用 TLS 协议保护,但是如果 RSA 公钥不可用,可以使用服务器提供的公钥;可以在连接中通过 ServerRSAPublicKeyFile 指定服务器的 RSA 公钥,或者AllowPublicKeyRetrieval=True参数以允许客户端从服务器获取公钥;但是需要注意的是 AllowPublicKeyRetrieval=True可能会导致恶意的代理通过中间人攻击(MITM)获取到明文密码,所以默认是关闭的,必须显式开启

  • 在URL连接后面增加allowPublicKeyRetrieval=true
  • DBever等SQL tool则在Driver properties增加User PropertiesallowPublicKeyRetrieval=true
    在这里插入图片描述

mysql导入导出sql文件

  1. 导出整个数据库
    mysqldump -u 用户名 -p 数据库名 > 导出的文件名
    mysqldump -u dbuser -p dbname > dbname.sql

  2. 导出一个表
    mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
    mysqldump -u dbuser -p dbname users> dbname_users.sql

  3. 导出一个数据库结构
    mysqldump -u dbuser -p -d --add-drop-table dbname >d:/dbname_db.sql
    -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

  4. 导入数据库
    用source 命令,先进入mysql数据库控制台,如
    mysql -u root -p
    mysql>use 数据库
    然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
    mysql>source d:/dbname.sql
    在这里插入图片描述

发布了293 篇原创文章 · 获赞 401 · 访问量 111万+

猜你喜欢

转载自blog.csdn.net/moshowgame/article/details/97267835
今日推荐