栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

windows下安装并修改mysql-5.7.17-winx64密码

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

windows下安装并修改mysql-5.7.17-winx64密码

mysql官网下载地址:https://dev.mysql.com/downloads/mysql/

新版安装包解压后,没有网上教程里面提到的data文件夹和my-default.ini,如下图所示

2.在下面目录下创建my.ini,内容如下:

character_set_server=utf8 #这里网上很多是default-character-set=utf8 ,容易出错
port = 3306
basedir=D:from20181022softmysql-5.7.24mysql-5.7.24-winx64
#datadir=D:MySQLMySQL Server 5.7.23data 在这里不需要自己去创建一个空的data文件夹
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB

可以直接复制粘贴,主要修改下basedir后的路径,注意路径中为而非

3.进入dos的命令行,用administrator进入
a.进入MySQL的bin目录,输入mysqld –install可以安装MySQL
D:Javamysql-5.7.35-winx64bin>mysqld -install
Service successfully installed.
或之前已安装过Mysql卸载不干净
D:Javamysql-5.7.35-winx64bin>mysqld -install
The service already exists!
查看是否存在
D:Javamysql-5.7.35-winx64bin>sc query mysql
SERVICE_NAME: mysql
TYPE : 10 WIN32_OWN_PROCESS
STATE : 1 STOPPED
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
确认之前已安装过
进行再删除
D:Javamysql-5.7.35-winx64bin>sc delete mysql
[SC] DeleteService 成功
即可安装Mysql
D:Javamysql-5.7.35-winx64bin>mysqld -install
Service successfully installed.

输入mysqld --initialize --user=root --console(,初始化,创建root账户.可直接复制)
运行后

…到最后一行
[Note] A temporary password is generated for root@localhost:
OR5tM511qp_&(这个就是初始密码)

如果没有密码,则

启动MySQL服务
D:Javamysql-5.7.35-winx64bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。

进入MySQL的bin目录mysql,输入
D:Javamysql-5.7.35-winx64bin>mysql

ERROR 1045 (28000): Access denied for user ‘ODBC’@‘localhost’ (using password: NO)
账号或密码有误

使用新打开的管理员身份下运行的cmd窗口输入以下代码:
mysqld --skip-grant-tables
有些同学的mysql安装目录可能不在C盘 需要切换盘符为你装mysql的那个盘 例如我的是D盘
我的文件夹目录为:D:Javamysql-5.7.35-winx64
输入 D: 即可切换盘符 “注意:所有的代码都要用英文输入法,不然会出错,切记切记!”

打完回车之后,这个窗口就不会动了,保持这个窗口在后台打开,再在管理员权限下重新开一个新的cmd窗口

在新窗口下,用上面切换盘符的方法,再把路径调整到你安装mysql的文件夹目录下

下一步,系统会再次跳出 mysql>, 输入use mysql;

此时系统文字回复数据库已经切换至mysql,此时在新一行跳出来的 mysql>,输入 show tables;

按照传统改密码方式发现没有 password这个字段。
mysql> update user set password=password(‘root’) where user=‘root’;
ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’

查询user表结构
mysql> desc user;
±-----------------------±----------------------------------±-----±----±----------------------±------+
| Field | Type | Null | Key | Default | Extra |
±-----------------------±----------------------------------±-----±----±----------------------±------+
| Host | char(60) | NO | PRI | | |
| User | char(32) | NO | PRI | | |
| Select_priv | enum(‘N’,‘Y’) | NO | | N | |
| Insert_priv | enum(‘N’,‘Y’) | NO | | N | |
| Update_priv | enum(‘N’,‘Y’) | NO | | N | |
| Delete_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_priv | enum(‘N’,‘Y’) | NO | | N | |
| Drop_priv | enum(‘N’,‘Y’) | NO | | N | |
| Reload_priv | enum(‘N’,‘Y’) | NO | | N | |
| Shutdown_priv | enum(‘N’,‘Y’) | NO | | N | |
| Process_priv | enum(‘N’,‘Y’) | NO | | N | |
| File_priv | enum(‘N’,‘Y’) | NO | | N | |
| Grant_priv | enum(‘N’,‘Y’) | NO | | N | |
| References_priv | enum(‘N’,‘Y’) | NO | | N | |
| Index_priv | enum(‘N’,‘Y’) | NO | | N | |
| Alter_priv | enum(‘N’,‘Y’) | NO | | N | |
| Show_db_priv | enum(‘N’,‘Y’) | NO | | N | |
| Super_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_tmp_table_priv | enum(‘N’,‘Y’) | NO | | N | |
| Lock_tables_priv | enum(‘N’,‘Y’) | NO | | N | |
| Execute_priv | enum(‘N’,‘Y’) | NO | | N | |
| Repl_slave_priv | enum(‘N’,‘Y’) | NO | | N | |
| Repl_client_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_view_priv | enum(‘N’,‘Y’) | NO | | N | |
| Show_view_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_routine_priv | enum(‘N’,‘Y’) | NO | | N | |
| Alter_routine_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_user_priv | enum(‘N’,‘Y’) | NO | | N | |
| Event_priv | enum(‘N’,‘Y’) | NO | | N | |
| Trigger_priv | enum(‘N’,‘Y’) | NO | | N | |
| Create_tablespace_priv | enum(‘N’,‘Y’) | NO | | N | |
| ssl_type | enum(’’,‘ANY’,‘X509’,‘SPECIFIED’) | NO | | | |
| ssl_cipher | blob | NO | | NULL | |
| x509_issuer | blob | NO | | NULL | |
| x509_subject | blob | NO | | NULL | |
| max_questions | int(11) unsigned | NO | | 0 | |
| max_updates | int(11) unsigned | NO | | 0 | |
| max_connections | int(11) unsigned | NO | | 0 | |
| max_user_connections | int(11) unsigned | NO | | 0 | |
| plugin | char(64) | NO | | mysql_native_password | |
| authentication_string | text | YES | | NULL | |
| password_expired | enum(‘N’,‘Y’) | NO | | N | |
| password_last_changed | timestamp | YES | | NULL | |
| password_lifetime | smallint(5) unsigned | YES | | NULL | |
| account_locked | enum(‘N’,‘Y’) | NO | | N | |
±-----------------------±----------------------------------±-----±----±----------------------±------+

此时在新一行跳出来的 mysql>,输入 select user,host,authentication_string from user;

网上查了一下据说5.7 版本password 字段改成authentication_string password函数还是原来的password函数
mysql> update user set authentication_string=‘root’ where user=‘root’;
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 1

想要查一下,密码是否成功修改,可以在新一行跳出来的 mysql>,输入 select user,host,authentication_string from user;

重启mysql

D:Javamysql-5.7.35-winx64bin>net stop mysql
MySQL 服务正在停止…
MySQL 服务已成功停止。
D:Javamysql-5.7.35-winx64bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。

查看show databases;时
此时系统会提示你修改密码,并且必须使用ALTER USER的方式修改,另外,无法执行其他任何语句:
mysql> alter user ‘root’@‘localhost’ identified by ‘root’;
Query OK, 0 rows affected (0.00 sec)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/299040.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号