windows MYSQL 安装及修改root密码
官网下载zip包,我下载的是64位的:
下载地址:https://dev.mysql.com/downloads/mysql/
下载zip的包:
下载后解压:(解压在哪个盘都可以的)
我放在了这里 E:\web\mysql-8.0.11-winx64 ,顺便缩短了文件名,所以为 E:\web\mysql-8.0.11。
下载完后,我们将 zip 包解压到相应的目录,这里我将解压后的文件夹放在 C:\web\mysql-8.0.11 下。
接下来我们需要配置下 MySQL 的配置文件
打开刚刚解压的文件夹 C:\web\mysql-8.0.11 ,在该文件夹下创建 my.ini 配置文件,编辑 my.ini 配置以下基本信息:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 [mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=C:\web\mysql-8.0.11
# 设置mysql数据库的数据的存放目录
datadir=C:\web\sqldata
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
接下来我们来启动下 MySQL 数据库:
以管理员身份打开 cmd 命令行工具,切换目录:
1.3. 生成data文件:
以管理员身份运行cmd
程序--输入cmd 找到cmd.exe 右键以管理员身份运行
进入E:\web\mysql-8.0.11\bin 下
执行命令:mysqld --initialize-insecure --user=mysql
在E:\web\mysql-8.0.11目录下生成data目录
或 mysqld --initialize-insecure
1.4. 启动服务:
执行命令:net start mysql
启动mysql服务,若提示:服务名无效...(请看步骤:1.5);
1.5. 解决启动服务失败(报错):
提示:服务名无效
解决方法:
执行命令:mysqld -install
即可(不需要my.ini配置文件 注意:网上写的很多需要my.ini配置文件,其实不需要my.ini配置文件也可以,我之前放置了my.ini文件,反而提示服务无法启动,把my.ini删除后启动成功了)
若出现提示“服务正在启动或停止中,请稍后片刻后再重试一次”,需要去资源管理器中把mysql进程全结束了,重新启动即可。
1.6. 登录mysql:
登录mysql:(因为之前没设置密码,所以密码为空,不用输入密码,直接回车即可)
E:\mysql-5.7.20-winx64\bin>mysql -u root -p
Enter password:
1.7. 查询用户密码:
查询用户密码命令:mysql> select host,user,authentication_string from mysql.user;
host: 允许用户登录的ip‘位置'%表示可以远程;
user:当前数据库的用户名;
authentication_string: 用户密码(后面有提到此字段);
1.8. 设置(或修改)root用户密码:
默认root密码为空的话 ,下面使用navicat就无法连接,所以我们需要修改root的密码。
这是很关键的一步。此处踩过N多坑,后来查阅很多才知道在mysql 5.7.9以后废弃了password字段和password()函数;authentication_string:字段表示用户密码。
下面直接演示正确修改root密码的步骤:
一、如果当前root用户authentication_string字段下有内容,先将其设置为空,否则直接进行二步骤。
1
2
|
use mysql; update user set authentication_string= '' where user = 'root' |
3.下面直接演示正确修改root密码的步骤:
二、使用ALTER修改root用户密码,方法为 ALTER user 'root'@'localhost' IDENTIFIED BY '新密码'。如下:
1
|
ALTER user 'root' @ 'localhost' IDENTIFIED BY 'Cliu123#' |
此处有两点需要注意:
1、不需要flush privileges来刷新权限。
2、密码要包含大写字母,小写字母,数字,特殊符号。
修改成功; 重新使用用户名密码登录即可;
注意: 一定不要采取如下形式该密码:
1
2
|
use mysql; update user set authentication_string= "newpassword" where user = "root" ; |
这样会给user表中root用户的authentication_string字段下设置了newpassword值;
当再使用ALTER USER 'root'@'localhost' IDENTIFITED BY 'newpassword'
时会报错的;
因为authentication_string字段下只能是mysql加密后的41位字符串密码;其他的会报格式错误;
*THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE
至此,安装mysql和修改root密码告一段落。
开始navicat for mysql篇。
账号密码都正确,连接报错1251。OK 我们先来看看这个改动:
在MySQL 8.04前,执行:SET PASSWORD=PASSWORD('[新密码]');但是MySQL8.0.4开始,这样默认是不行的。因为之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。
so,我们这里需要再次修改一次root密码。
先登录进入mysql环境:执行下面三个命令。(记得带上分号)
1
2
3
|
use mysql; ALTER USER 'root' @ 'localhost' IDENTIFIED WITH mysql_native_password BY '新密码' ; FLUSH PRIVILEGES ; |
OK.现在再去重连。perfect!
windows MYSQL 安装及修改root密码的更多相关文章
- MySQL 8.*版本 修改root密码
MySQL .*版本 修改root密码 查看版本:select version() from dual; 1.6. 登录mysql: 登录mysql:(因为之前没设置密码,所以密码为空,不用输入密码, ...
- MySQL下载、安装和修改root密码
一.下载地址:MySQL_5.6.22_winx64_XiaZaiBa :http://rj.baidu.com/soft/detail/12585.html?ald 二.安装软件,安装到指定的路径, ...
- MySQL 5.7 修改root密码
更新 MySQL 5.7 以后通过以下方法无法在修改root密码: ') where user='root'; 查看下MySQL的官方文档发现版本更新后原来user里的password字段已经变更为a ...
- mysql 5.7 修改root密码允许远程连接
1.修改root密码(其他用户类似) 试过网上看的一些 在mysql数据库执行 update user set password='新密码' where user='root' 执行说找不到字段, ...
- mysql5.7.11编译安装以及修改root密码小结
系统是cenos6.7 64位的,默认mysql5.7.11下载到/usr/local/src,安装目录在/app/local/mysql目录下,mysql数据放置目录/app/local/data. ...
- centos6.5 mysql 5.6修改root密码,以及创建用户并授权
mkdir -p mysql_home/{data,temp,undologs,logs} chown -R mysql:mysql /dbfiles/mysql_home mysql_install ...
- MySQL安装后设置root 密码
Mysql安装完成后初始化root 密码为空,直接回车 使用命令行: mysqladmin -u root password "123456" 来设置root密码.这里我设置的密码 ...
- mysql远程访问,修改root密码
mysql -uroot -p #input password use mysql; update user set host='%' where user='root'; flush privile ...
- MYSQL 免安装版修改root密码
c:>mysql –uroot; mysql>show databases; mysql>use mysql;//不用修改 mysql>UPDATE user SET pass ...
随机推荐
- Android 实现登录界面和功能实例
近期一个android小程序须要登录功能,我简单实现了一下.如今记录下来也当做个笔记,同一时候也希望能够相互学习.所以,假设我的代码有问题,还各位请提出来.多谢了! 以下.就简述一下此实例的主要内容: ...
- (原)tensorflow使用eager在mnist上训练的简单例子
转载请注明出处: https://www.cnblogs.com/darkknightzh/p/9989586.html 代码网址: https://github.com/darkknightzh/t ...
- 指令创建 Express Node.js 项目
1.安装 Express 1.1 安装 Express 框架 首先保证已经安装过了 Node.js,然后进入终端使用管理员身份来安装 Express 框架. # 安装 express $ sudo n ...
- Atitit 项目版本管理gitflow 与 Forking的对比与使用
Atitit 项目版本管理gitflow 与 Forking的对比与使用 1.1. 版本管理的历史 csv>>svn >git 1 1.2. gitflow的核心是分版本管理,for ...
- 产品设计利器--axure
1.axute的使用方法: 2.普通线框图的使用: 3.高保真原型图: 4.交互思维. Axure RP8 是美国Axure Software Solution公司的旗舰产品,是一个快速的原型工具,主 ...
- 通过inotify实现反调试
1.inotify linux下inotify可以实现监控文件系统事件(打开,读写删除等),inotify最常见的api有以下几个: inotify_init:用于创建一个 inotify 实例的系统 ...
- mac os下不同工具go env下gopath显示不同
设置 vim ~/.zshrc 设置 vim ~/.bash_profile
- 不同语言的水仙花性能比较【Test1W】
看了大佬@鱼丸粗面一碗的文章:<这段代码,c 1秒,java 9秒,c# 14秒,而python...>,基于水仙花数的各种语言1W次性能比较,觉得很有意思.于是开启cv大法,把我有环境的 ...
- AWT是Java最早出现的图形界面,但很快就被Swing所取代。
Module 11 Swing AWT是Java最早出现的图形界面,但很快就被Swing所取代. Swing才是一种真正的图形开发. AWT在不同平台所出现的界面可能有所不同:因为每个OS都有自己的 ...
- java web service 写入图片到web/img/
获取本类service路径,然后字符串截取和拼接 String classpath= this.getClass().getResource("/").getPath(); Str ...