下载zip安装包:html
下载地址:https://dev.mysql.com/downloads/mysql
进入页面后能够不登陆。后点击底部“No thanks, just start my download.”便可开始下载。sql
或直接下载:https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.17-winx64.zip数据库
环境:Windows 10windows
一,安装
1.1,解压zip包到安装目录
好比个人安装目录是:D:\MySQL安全
1.2,配置文件
咱们发现解压后的目录并无my.ini文件,不要紧能够自行建立。在安装根目录下添加 my.ini,好比我这里是:D:\mysql\mysql-8.0.17-winx64\my.ini,写入基本配置:ide
[mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=C:\Program Files\MySQL # 设置mysql数据库的数据的存放目录 datadir=E:\database\MySQL\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 [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [client] # 设置mysql客户端链接服务端时默认使用的端口 port=3306 default-character-set=utf8
注意,新建配置文件的时候,注意保存格式,否则容易掉坑里工具
里面的 basedir 是我本地的安装目录,datadir 是我数据库数据文件要存放的位置,各项配置须要根据本身的环境进行配置。学习
查看全部的配置项,可参考:https://dev.mysql.com/doc/refman/8.0/en/mysqld-option-tables.html加密
1.3,配置环境参数
1.4,初始化数据库
前面已经配置好环境参数,这里能够直接以管理员身份打开cmd命令行,执行一下命令:
mysqld --initialize --console
注意!执行输出结果里面有一段: [Note] [MY-010454] [Server] A temporary password is generated for root@localhost:*fq4+a8b3OdS,其中root@localhost:后面的 “*fq4+a8b3OdS”就是初始密码(不含首位空格)。在没有更改密码前,须要记住这个密码,后续登陆须要用到。
要是你手快,或者没记住,那也没事,删掉初始化的 datadir 目录,再执行一遍初始化命令,又会从新生成的。固然,也能够使用安全工具,强制改密码,用什么方法,本身随意。
参考:https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization-mysqld.html
1.5,安装服务
接着执行命令:
mysqld --install [服务名]
后面的服务名能够不写,默认的名字为 mysql。固然,若是你的电脑上须要安装多个MySQL服务,就能够用不一样的名字区分了,好比 mysql5 和 mysql8。
安装完成以后,就能够经过命令net start mysql启动MySQL的服务了。
参考:https://dev.mysql.com/doc/refman/8.0/en/windows-start-service.html
二,更改密码
执行命令:
mysql -u root -p
这时候会提示输入密码,记住了上面第1.4安装时的密码,填入便可登陆成功,进入MySQL命令模式。
my.ini配置文件中MySQL的密码认证插件默认是“mysql_native_password”
因此直接执行命令修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
至此安装部署完成。
-----------------------------------------------------------------------------------------------------------------------------------
安装部署完成后,配置mysql远程链接,默认状况下,mysql是不容许远程链接的。
MYSQL 8.0不支持建立用户时受权,必须先建立,后受权(这是个坑,但愿之后的人不会再踩)
1.建立用户
create user 'username'@'localhost' identified by 'pwd';
例子:create user 'admin'@'%' identified by '123456';
2.赋予权限
grant all privileges on *.* to 'username'@'%' with grant option;
例子:grant all privileges on *.* to 'admin'@'%' with grant option;
-----------------------------------------------------------------------------------------------------------------------------
另外远程链接时,别忘了防火墙打开3306端口,否则是连不上的。
其余命令,可学习一下:
1.建立用户 create user 'username'@'localhost' identified by 'pwd' 2.修改访问权限 在mysql数据下修改user表用户host为'%' update user set host='%' where user='username' 3.修改密码 MYSQL8.0密码默认加密方式为 default_authentication_plugin=caching_sha2_password 因此会形成不兼容问题 alter user 'username'@'localhost' identified with mysql_native_password by 'newpwd' 4.修改操做权限 MYSQL 8.0不支持建立用户时受权,必须先建立,后受权 grant all privileges on *.* to 'username'@'%' with grant option;