一、安装配置MySQL
在下载mysql-5.7.23时,解压发现文件夹下没有my.ini的文件以及数据库数据保存的文件,网上搜索后发现,需要自己建立一个my.ini文件,里面的basedir保存的是安装目录,datadir保存的是数据存放目录,具体配置如下:
[mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] #设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=D:\MySQL\mysql # 设置mysql数据库的数据的存放目录 datadir=D:\MySQL\mysql\data # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB skip-grant-tables
这个配置文件放在解压的文件夹下即可。
二、安装启动mysql
用管理员身份打开cmd命令行工具,cd到解压文件的bin目录:D:\MySQL\mysql-5.7.21-winx64\bin
输入mysqld install回车运行,出现安装成功就可以了。
输入net start mysql 启动mysql (或打开windows服务手动启动mysql)
在cmd里启动发现没法启动
网上搜索了下发现是5.7版本才有这个问题,要在bin目录下手动初始化data目录
cd到bin目录下先初始化
1. mysqld --initialize-insecure自动生成无密码的root用户,
2. mysqld --initialize自动生成带随机密码的root用户
这里选择1 mysqld --initialize-insecure
初始化后再运行net start mysql 成功启动mysql ..
然后发现还是没有启动成功,最后搜索发现,需要将第一步启动中在data文件夹下的数据都删除,然后再启动一次。但是还是出现很多错误和warning,但是用net start mysql却能成功启动。上面配置文件最后一行skip-grant-tables说明登录mysql可以不用密码。
三、mysql修改密码
mysql修改密码有很多不同方法,我试了网上很多方法,但是只有一个成功,如下:
首先在my.ini文件中加入skip-grant-tables(上面配置文件下我已经加过了,能够不容输入密码登录);
然后用命令net start mysql启动mysql;
再输入mysql -u root -p登录,此时不用输入密码,直接回车就可以登录。
下面是重点!!!输入use mysql 然后回车,再输入:
update mysql.user set authentication_string=password('123qwe') where user='root' and Host ='localhost';(注意有分号),然后回车即可将密码改为123qwe。
然后再关闭服务,且将my.ini中的最后一行删除,保存,然后重新启动mysql服务,此时就要输入刚刚的密码了,但是第一次更改后需要再设置一下密码,mysql> SET PASSWORD = PASSWORD('123qwe'); 这样以后登录就正常了。
四、参考博客
https://zhidao.baidu.com/question/618660372686365012.html
https://www.cnblogs.com/fnlingnzb-learner/p/6009153.html
https://www.cnblogs.com/lmh2072005/p/5656392.html