mysql-5.7.21-winx64安装过程(整了好久原因是没关闭防火墙)

下载好的mysql-5.7.21-winx64解压后是没有data和my.ini两个文件的,先新建my.ini文件和data空文件夹

1,my.ini文件配置如下:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:mysql-5.7.21-winx64 (写自己的解压路径)
# 设置mysql数据库的数据的存放目录
datadir=D:mysql-5.7.21-winx64data  (写自己的解压路径)
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

2,添加bin目录到path环境变量

3,以管理员省份进入cmd->进入D盘安装目录bin下执行 mysqld install安装服务

4,运行 mysqld --initialize-insecure --user=mysql

5,运行MySQL服务 net start mysql    关闭MySQL服务的命令是 net stop mysql

6,登陆MySQL  mysql -u root -p

-------------------------------以下是复制别人的

一、安装
1、下载
到mysql官网 http://dev.mysql.com/downloads/mysql/ 下载mysql
注:msi的是安装版
2、解压
解压到想安装的目录下,我的是D:mysql-5.7.13-winx64
3、配置my.ini
在D:mysql-5.7.13-winx64目录下新建my.ini文件,输入以下配置代码:
[mysqld]
# 设置mysql的安装目录
basedir=D:mysql-5.7.13-winx64
# 设置mysql数据库的数据的存放目录,必须是data
datadir=D:mysql-5.7.13-winx64data
# mysql端口
port=3306
# 字符集
character_set_server=utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
1
2
3
4
5
6
7
8
9
10
4、安装
以管理员身份运行cmd,执行以下命令:
mysqld -install [服务名]
注:服务名默认为mysql,若无需要,建议不更改
5、初始化
mysqld --initialize-insecure
注:–initialize有两个-,后边没有空格
初始化后,D:mysql-5.7.13-winx64目录下回出现data目录
6、启动服务
net start mysql
7、登录mysql,修改密码
默认没有密码
 
搞定!
二、卸载
1、关闭服务
以管理员身份运行cmd,执行以下命令:
net stop mysql
2、卸载
mysqld -remove [服务名]
3、删除文件
4、删除注册表信息
清除注册表中的该MySQL服务,有几个地方:
a、HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesEventlogApplicationMySQL 目录删除
b、HKEY_LOCAL_MACHINESYSTEMControlSet002ServicesEventlogApplicationMySQL 目录删除
c、HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesEventlogApplicationMySQL 目录删除
注册表中的ControlSet001、ControlSet002不一定是001和002,可能是ControlSet005、006之类,删除的时候都删除就可以 。
三、常见问题
1、data文件错误

原因:一般初始化之前已存在data文件就会出现这个错误,或者data文件缺少了某些文件
解决:先执行mysqld -remove,然后把data文件删除,如果删除不了重启一下就可以了,之后重新进行安装就没问题了。如果想保留之前的data文件,可以先把data文件拷贝到其他地方,安装好之后再将原data文件中多的文件拷贝进去就行了,具体参考我的另一片文章mysql通过拷贝数据文件方式迁移数据库
2、密码错误

原因1:使用mysqld –initialize方法安装会生成一个随机字符串组成的密码,这个密码在错误日志D:mysql-5.7.13-winx64datagreen.err(green是用户名)可以找到。
原因2:忘记密码
解决:如果忘记密码或找不到随机密码,可以通过以下方法跳过权限修改密码
以管理员身份运行cmd,执行以下命令:
net stop mysql//关闭服务
mysqld --skip-grant-tables;//设置mysql登录--skip-grant-tables模式
1
2
打开一个新的cmd
mysql//直接登录mysql

update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';//修改密码
//特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了,而是将加密后的用户密码存储于authentication_string字段

flush privileges;//刷新权限,退出--skip-grant-tables模式,很重要!
1
2
3
4
5
6
重启电脑,然后mysql就可以连接了
但是此时操作似乎功能不完全,还要在登录状态下修改一次密码
alter user 'root'@'localhost' identified by '123456';
还可以这样:
set password for 'root'@'localhost'=password('123456');
或这样:
set password=password('123456');

原文地址:https://www.cnblogs.com/yanch/p/8963250.html