MySQL 8 在 Windows 下安装及使用
MySQL 8 带来了全新的体验,比如支持 NoSQL、JSON 等,拥有比 MySQL 5.7 两倍以上的性能提升。本文讲解如何在 Windows 下安装 MySQL 8,以及基本的 MySQL 用法。
下载
下载地址 https://dev.mysql.com/downloads/mysql/8.0.html。
本例为:MySQL Community Server 8.0.15。
解压
解压至安装目录。
本例为:D:\DevSoftwares\mysql-8.0.15-winx64
创建 my.ini
在安装目录下创建my.ini文件 ,MySQL 安装的配置文件:
[mysqld]
# 安装目录
basedir=D:\\DevSoftwares\\mysql-8.0.15-winx64
# 数据存放目录
datadir=D:\\DevSoftwares\\mysql-8.0.15-winx64\\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password[client]
default-character-set=utf8[mysql]
default-character-set=utf8
配置环境变量
初始化安装
执行:
mysqld —defaults-file=D:\mysql-8.0.12-winx64\my.ini —initialize —console
控制台输出如下,说明安装成功:
C:\Users\Administrator>mysqld —defaults-file=D:\DevSoftwares\mysql-8.0.15-winx64\my.ini —initialize —console
2019-03-01T02:43:10.348800Z 0 [System] [MY-013169] [Server] D:\DevSoftwares\mysql-8.0.15-winx64\bin\mysqld.exe (mysqld 8.0.15) initializing of server in progress as process 12312
2019-03-01T02:43:10.350800Z 0 [Warning] [MY-013242] [Server] —character-set-server: ‘utf8’ is currently an alias for the character set UTF8MB3, but will be analias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to
be unambiguous.
2019-03-01T02:43:41.258800Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Oe:iz2BQy*F1
2019-03-01T02:43:51.951800Z 0 [System] [MY-013170] [Server] D:\DevSoftwares\mysql-8.0.15-winx64\bin\mysqld.exe (mysqld 8.0.15) initializing of server has completed
其中,Oe:iz2BQy*F1 就是 root 用户的初始化密码。稍后可以做更改。
启动、关闭 MySQL server
执行mysqld就能启动 MySQL server,或者执行 mysqld —console可以看到完整的启动信息:
C:\Users\Administrator>mysqld —console
2019-03-01T02:47:37.701800Z 0 [System] [MY-010116] [Server] D:\DevSoftwares\mysql-8.0.15-winx64\bin\mysqld.exe (mysqld 8.0.15) starting as process 14508
2019-03-01T02:47:37.706800Z 0 [Warning] [MY-013242] [Server] —character-set-server: ‘utf8’ is currently an alias for the character set UTF8MB3, but will be analias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to
be unambiguous.
2019-03-01T02:47:43.851800Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2019-03-01T02:47:43.970800Z 0 [System] [MY-010931] [Server] D:\DevSoftwares\mysql-8.0.15-winx64\bin\mysqld.exe: ready for connections. Version: ‘8.0.15’ socket: ‘’ port: 3306 MySQL Community Server - GPL.
2019-03-01T02:47:44.136800Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: ‘::’ port: 33060
关闭,可以执行 mysqladmin -u root shutdown
。
设置服务启动
mysqld install MySQL-8.0.15
service.msc 打开服务启动管理,打开MySQL-8.0.15服务管理启动(或可配置开机自动启动)
使用 MySQL 客户端
使用 mysql 来登录,账号为 root,密码为 Oe:iz2BQy*F1:
mysql -u root -p
执行下面的语句来改密码。其中“123456”即为新密码。
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘123456’;
exit命令退出之后,重新登录,密码即为123456了
客户端连接
当数据库和客户端安装成功后,我使用客户端连接接数据库时,却是登陆失败:
2059 - Authentication plugin ‘caching_sha2_password’ cannot be loaded: ……
原来,MySql 8.0.11 换了新的身份验证插件(caching_sha2_password), 原来的身份验证插件为(mysql_native_password)。而客户端工具Navicat Premium12 中找不到新的身份验证插件(caching_sha2_password),对此,我们将mysql用户使用的 登录密码加密规则 还原成 mysql_native_password,即可登陆成功。
具体操作:
首先使用命令行客户端工具登录数据库,密码为123456
mysql -u root -p
从数据库的user表中查询 mysql 用户原来使用的身份验证插件
select user,host,plugin,authentication_string from user;
将用户root使用的身份验证插件 替换为之前版本使用的 mysql_native_password ,修改成功后再次使用客户端工具 Navicat Premium12 ,如无其它意外 , 应该是可以正常连接登录了。
alter user ‘root’@’localhost’ identified with mysql_native_password by ‘123456’;
再通过客户端连接,就ok了
还没有评论,来说两句吧...