本文链接:https://blog.csdn.net/wudinaniya/article/details/81115916 一? 下载mysql5.7.22 mysql5.7.22下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
?
?
?
二 安装mysql 1、解压mysql压缩包,到合适位置(放到C盘的话,可能在修改ini文件时涉及权限问题):
?
如上图:此时,解压后的文件中没有data目录和ini文件。
2、在解压目录 E:\mysql-5.7.22-winx64 下新建my.ini文件,复制如下内容
[mysqld] port = 3306 basedir=E:\mysql-5.7.22-winx64 datadir=E:\mysql-5.7.22-winx64\data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysql] default-character-set=utf8 3、下面配置环境变量
此电脑>属性>高级系统设置>环境变量
在系统变量部分新建一个变量名:MYSQL_HOME,变量值:E:\mysql-5.7.22-winx64
?
?
找到Path,编辑>新建,添加环境变量? ?%MYSQL_HOME%\bin
?
4、 MySQL安装过程:
管理员身份运行cmd,打开dos窗口,进入目录? ?E:\mysql-5.7.22-winx64\bin
?
运行命令:mysqld --initialize (此时会生成data目录)
E:\mysql-5.7.22-winx64\bin>mysqld --initialize E:\mysql-5.7.22-winx64\bin> 运行命令: mysqld -install (安装)
?
运行命令:?net start mysql (启动mysql服务)
E:\mysql-5.7.22-winx64\bin>net start mysql MySQL 服务正在启动 . MySQL 服务已经启动成功。 可以在任务管理器中看到mysql服务
?
5、?使用临时密码,登录MySQL,修改root密码
5.1、在前面生成的data目录下找到后缀为.err的文件,该文件中有个临时密码
A temporary password is generated for [email?protected]: C.fE;Sf&L4Gu
C.fE;Sf&L4Gu即为临时密码。
5.2、使用临时密码,运行mysql -uroot -p 进行登陆。
E:\mysql-5.7.22-winx64\bin>mysql -uroot -p Enter password: ************ Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.7.22
Copyright (c) 2000,2018,Oracle and/or its affiliates. All rights reserved. 5.3、执行下面的命令修改MySql root密码。其中 sdbrk 为新密码。
mysql> set password for [email?protected]=password(‘sdbrk‘); Query OK,0 rows affected,1 warning (0.00 sec)
mysql> quit; Bye 5.3、使用quit或exit命令退出myql后,使用新密码sdbrk重新登录。能登录成功。
C:\Users\qxmak>mysql -uroot -p Enter password: ***** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 Server version: 5.7.22 MySQL Community Server (GPL)
Copyright (c) 2000,Oracle and/or its affiliates. All rights reserved. 执行sql命令也没问题:
mysql> show grants; +---------------------------------------------------------------------+ | Grants for [email?protected] | +---------------------------------------------------------------------+ | GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘localhost‘ WITH GRANT OPTION | | GRANT PROXY ON ‘‘@‘‘ TO ‘root‘@‘localhost‘ WITH GRANT OPTION | +---------------------------------------------------------------------+ 2 rows in set (0.01 sec)
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec)
mysql> use mysql; Database changed mysql> select user,host from user; +---------------+-----------+ | user | host | +---------------+-----------+ | mysql.session | localhost | | mysql.sys | localhost | | root | localhost | +---------------+-----------+ 3 rows in set (0.00 sec) 从上面最后一条查询查询语句可知,root用户还不能远程登陆。
?
5.4、授予root用户远程登陆权限:
mysql> grant all privileges on *.* to [email?protected]‘%‘ identified by ‘sdbrk‘; Query OK,1 warning (0.00 sec) 5.5、刷新权限,使设置生效, OK。
mysql> flush privileges; Query OK,0 rows affected (0.00 sec) 5.6、在远程机器上测试远程连接:?mysql -h192.168.0.150 -uroot -p
5.6.1、测试远程连接时提示错误:不能连接远程服务器上的ip
C:\Users\Administrator>mysql -h192.168.0.150 -uroot -p Enter password: ***** ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘192.168.0.150‘ (10060)
5.6.2、不能远程连接的原因是,我防火墙开着呢。解决这个问题有两种方案:
方案一:关闭防火墙。
方案二:不关闭防火墙,而是在入站规则中,开放mysql的3306端口。
这里介绍方案二:
<1> 开始菜单搜索框中输入“defender”,打开“Windows Defender 防火墙”>高级设置
?
<2> 入站规则>新建规则,打开“新建入站规则向导”
?
?
<3> 规则类型:选择 “端口”,下一步
协议和端口:勾选? 应用于 “TCP” 和 “特定本地端口”,并指定端口号 3306,下一步
?
操作:勾选 “允许连接”,下一步
配置文件:何时应用规则? 全部勾选
?
名称:自己随意写,点击"完成"按钮。
?
<4> 此时,在入站规则中将出现mysql3306.状态为已启用。
?
?
再次使用远程机器登陆mysql,就能正常登录了:
(编辑:ASP站长网)
|