1、下载MySQL
官网下载mysql:https://dev.mysql.com/downloads/mysql/
2、安装
1、将下载好的安装包解压到安装目录
2、配置环境变量
新建系统环境变量,变量值为安装路径
注意:以上配置的环境变量还不足以在任何位置都找到mysql服务,必须在D:\MySQL\mysql-8.0.18-winx64\bin录下才能找到。
所以我们需要再编辑系统环境变量的path,这一步也可以在安装之后做,将安装目录的bin目录D:\MySQL\mysql-8.0.18-winx64\bin添加到path变量的值后面:
注意:编辑path变量时需要在前面的值后面添加分号;分割开。
3、配置初始化的my.ini文件
如果解压后的目录没有my.ini文件,可以自行创建。在安装根目录下添加 my.ini(新建文本文件,将文件类型改为.ini),写入基本配置:
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\\MySQL\\mysql-8.0.18-winx64 # 切记此处一定要用双斜杠\\
# 设置mysql数据库的数据的存放目录
datadir=D:\\MySQL\\mysql-8.0.18-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
注意:其中的data目录不需要创建,下一步初始化工作中会自动创建。
4、初始化数据库
以管理员身份运行cmd
进入D:\MySQL\mysql-8.0.18-winx64\bin目录下
执行命令:mysqld --initialize --console
root@localhost:后面的红框部分就是初始密码(不含首位空格)。在没有更改密码前,需要记住这个密码,后续登录需要用到。如果忘记了,可以删掉初始化的 datadir 目录,再执行一遍初始化命令,又会重新生成。
5、安装mysql
以管理员身份运行cmd
进入D:\MySQL\mysql-8.0.18-winx64\bin目录下
执行命令:mysqld --install [服务名]
后面的服务名可以不写,默认的名字为 mysql。当然,如果你的电脑上需要安装多个MySQL服务,就可以用不同的名字区分了,比如 mysql5 和 mysql8。
安装完成之后,就可以通过命令net start mysql启动MySQL的服务了。通过命令net stop mysql停止服务。通过命令sc delete MySQL/mysqld -remove卸载 MySQL 服务
当启动mysql时提示服务名无效时
可能因为net start +服务名,启动的是win下注册的服务。此时,系统中并没有注册mysql到服务中。即当前路径下没有mysql服务,只需重新将MySQL注册到win服务里面。
注意: 在 5.7 需要初始化 data 目录:
进入D:\MySQL\mysql-8.0.18-winx64\bin目录下
mysqld --initialize-insecure
初始化后再运行 net start mysql 即可启动 mysql。
6、修改密码
方法1:
以管理员身份运行cmd
进入D:\MySQL\mysql-8.0.18-winx64\bin目录下执行
mysqladmin -u root -p旧密码 password 新密码
方法2:
以管理员身份运行cmd
进入D:\MySQL\mysql-8.0.18-winx64\bin目录下执行
mysql -h 主机名 -u 用户名 -p
参数说明:
-h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0.1)该参数可以省略;
-u : 登录的用户名;
-p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。
如果我们要登录本机的 MySQL 数据库,只需要输入以下命令即可:
mysql -u root -p
输入前面的初始密码进入mysql
在mysql执行以下命令:
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘新密码’;
修改密码,注意命令尾的;一定要有,这是mysql的语法。
到此,安装部署就完成了。
在mysql执行命令:
select user,host,authentication_string from mysql.user;
默认初始化的mysql数据库,其中user表里面存储MySQL用户信息。
管理员root的host是localhost,代表仅限localhost登录访问。如果要允许开放其他ip登录,则需要添加新的host。如果要允许所有ip访问,可以直接修改成“%”
创建用户:
CREATE USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘jskdjk’;
#检查用户
select user, host, plugin, authentication_string from user\G;
授权远程数据库
#授权所有权限
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’;
#授权基本的查询修改权限,按需求设置
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON . TO ‘root’@’%’;
查看用户权限
show grants for ‘root’@’%’;
删除原来的user为root,host为localhost的
查看密码加密方式:
参考
https://blog.csdn.net/qq_43037478/article/details/88976024
https://www.cnblogs.com/zhangkanghui/p/9613844.html
https://www.runoob.com/mysql/mysql-install.html
MySQL创建用户与授权
msi安装