mysql5.7安装和修改密码

mysql5.7安装

第一

下载

https://downloads.mysql.com/archives/community/

首先下载mysql5.7.18zip安装包

根据电脑配置选择32/64位版本

第二

解压

 把压缩包解压到你指定的路径下,红色的这个my.ini  一般是没有的需要自己新建一个。

第三

配置环境变量

配置环境变量:控制面板->系统和安全->系统->高级系统设置

环境变量配置就是把mysql的安装目录的bin放到你path中      这个是我的mysql的目录: E:programmysql-5.7.22-winx64in  

第四

直接在根目录下新建文本文档,重命名为my.ini,权限不够可以在桌面创建完成后移动到bin目录下,my.ini配置内

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8      ###这里设置字符集,用了一段时间报错,现在我默认注释了
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=E:programmysql-5.7.22-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:programmysql-5.7.22-winx64data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

第五

在mysql根目录下新建data文件夹,安装前务必保证data为一个空文件夹

第六

以管理员身份运行cmd命令

输入cd E:programmysql-5.7.22-winx64

进入bin目录下

输入mysqld --initialize --user=mysql --console记下最后一行产生的随机密码             (这样子也可以自己实验了  mysqld --initialize --console)

接着输入mysqld --install


普通打开cmd执行就是这样,这里需要用管理员权限执行cmd,然后执行这条命令。

好了服务启动了,开始进入mysql,不知道密码就修改,知道就进入就可以了


补充一个命令添加删除mysql的服务
添加:mysqld --install 服务名
删除:mysqld --remove  服务名

连接mysql  但是出现的随机密码不知道是哪个?

知道密码后开始进入MySQL

修改密码:

1.关闭mysql服务
net stop mysql

2.找到mysql安装路径找到 my.ini 打开在 [mysqld] 下添加 skip-grant-tables 跳过密码校验

3.登陆mysql mysql -uroot -p密码随便输入

4.进入MySQL 改密码
mysql> update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost'; ///123456自己的新密码 *特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了

5.记得把my.ini中的
skip-grant-tables 去掉否则谁都可以登陆我们的数据库了
 


 

本人参考这个做的修改密码

 修改密码的地址可以参考这个

http://www.jb51.net/article/77858.htm

新发现的,这个的操作更好 https://weibo.com/p/23041814abad0230102wtm7?display=0&retcode=6102&sudaref=passport.weibo.com

后期补充:mysql5.7使用一段时间,今天出现了一个问题,启动不了了。

报错

网上找了好多资料,情况不太一样,

我的解决方法:这里重新安装mysql了

打开cmd,进入mysql安装的bin目录

输入语句mysqld --initialize --user=mysql --console(可能需要定位到MySQL的bin目录下),(看到生成个data文件(如果没有就自己生成,再重新运行),是系统默认创建数据库的),此时还会生成一个临时的密码(解压版默认为空),记住,会用到的

出现个问题,这个urf8不认识,前几天安装使用还是没有问题的,现在出现问题了,我就把这个注释了,在mysql目录下的my.ini中注释了

然后再次执行上边的语句,只有一些警告,不用管,

然后重启mysql,可以了,启动成功了

登陆mysql

登陆了,这个密码太复杂了,我想要改一个。

执行上次安装的时候的修改密码的语句,但是报错了,改不了,

那么,又找了决解方法

登陆后修改密码,不让修改,总报错

mysql error You must reset your password using ALTER USER statement before executing this statement.

step 1: SET PASSWORD = PASSWORD('your new password');//这里your new password  就是你的密码
step 2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; 

step
3: flush privileges; 完成以上三步退出再登,使用新设置的密码就行了,其他原样输入即可

好了,修改后,登陆成功了。

又解决了一个坑。。。。

ps:这里等于是初始化了数据库,原来的数据会有坑。我是自己的数据,不重要,所以初始化了,初始化之前记得要把data下的数据拷贝出来。data下的数据应该就是数据库的表数据。自己看一下啊;

这里另一个兄弟的解决方案:https://www.cnblogs.com/jianz/p/6756771.html

一般可能是ini的配置文件中出现了问题,导致的。需要查看日志找出问题:mysqld --console  看到报错信息 

日志很重要,记得要看;

还有一种方案就是把服务重新注册试试。有时候mysql启动不了,我就把服务重新注册在启动就好了。

添加:mysqld --install 服务名
删除:mysqld --remove  服务名




备份data文件夹,然后初始化mysql,和上边一样,然后把data替换掉就可以了
原文地址:https://www.cnblogs.com/renjianjun/p/9016286.html