1、下载mysql

https://dev.mysql.com/downloads/

2、配置环境变量

变量名:MYSQL_HOME

变量值:E:\MySql\mysql-8.0.15-winx64\mysql-8.0.15-winx64

path里添加:%MYSQL_HOME%\bin;

注:如果需要修改一些配置的话,在当前目录下自行新建配置文件:my.ini

例如,这里我将端口修改为:3309,默认端口为3306

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3309
# 设置mysql的安装目录
basedir=E:\MySql\mysql-8.0.15-winx64\mysql-8.0.15-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:\MySql\mysql-8.0.15-winx64\mysql-8.0.15-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

端口号更改之后,需要重启服务才会生效.

3、生成data文件

以管理员身份运行cmd

进入E:\MySql\mysql-8.0.15-winx64\mysql-8.0.15-winx64\bin 下

执行命令:mysqld --initialize-insecure --user=mysql  在E:\MySql\mysql-8.0.15-winx64\mysql-8.0.15-winx64目录下生成data目录

4、启动服务

执行命令:net start mysql  启动mysql服务,若提示:服务名无效,执行命令:mysqld -install  即可

在服务列表中可看到该服务:

停止服务:net stop mysql

卸载服务:mysqld --remove mysql

下面开始使用MySql:

1、链接mysql:(以root账号登录)

mysql -u root -p

初始没有密码,直接enter

注意:当配置文件中将Mysql端口号更改了,则登录时需指定端口,P为大写:(这里我设置的端口为3309,,主机ip为192.168.168.152)

mysql -P 3309 -h 192.168.168.152 -u root -p

2、登录之后,修改密码,并配置远程访问

登陆成功之后修改密码(密码修改为admin):

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin';

或者

update mysql.user set authentication_string=password('admin') where user='root' and Host = 'localhost';

默认不允许远程访问MySQL,如果需要远程访问,下面是开启远程访问的命令:

use mysql;

update user set host = '%' where user = 'root';

FLUSH PRIVILEGES;

3、基础操作

①创建数据库:

create database Temp DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

删除数据库:drop database Temp;

②创建用户:

CREATE USER  'test'@'%'  IDENTIFIED BY  '123456';

CREATE USER  'user_name'@'host'  IDENTIFIED BY  'password';

user_name:要创建用户的名字。

host:表示要这个新创建的用户允许从哪台机登陆,如果只允许从本机登陆,则 填 ‘localhost’ ,如果允许从远程登陆,则填 ‘%’

password:新创建用户的登陆数据库密码,如果没密码可以不写。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改密码永不过期

可执行,select * from user;查看用户列表(查看用户拥有的权限,可以看到用户很多权限都是N,因为未授权)

4、授权用户:

GRANT ALL PRIVILEGES ON Temp.* TO 'test'@'%';

GRANT privileges ON  databasename.tablename  TO  ‘username’@‘host’

privileges:表示要授予什么权力,例如可以有 select , insert ,delete,update等,如果要授予全部权力,则填 ALL

databasename.tablename:表示用户的权限能用在哪个库的哪个表中,如果想要用户的权限很作用于所有的数据库所有的表,则填 *.*,*是一个通配符,表示全部。

’username‘@‘host’:表示授权给哪个用户。

5、刷新权限表

flush privileges;

执行这个命令的原因是,需要将新加入的用户写入到权限表中,即更新grant table

6、用Navicat for MySQL链接数据库:

如果链接失败的话,报错:Client does not support authentication protocol requested by server;

(原因:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password;那么把mysql用户登录密码加密规则还原成mysql_native_password即可)

执行命令:

ALTER USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY '123456';#更新密码加密规则

FLUSH PRIVILEGES; #刷新权限

7、mysql 退出,有三种方式可退出:
mysql > exit;
mysql > quit;
mysql > \q;

8、如果忘记了mysql root账号密码,可以进行重置密码(转载原文章地址:https://www.cnblogs.com/baimj/p/11738708.html)

①停止mysql服务:

net stop mysql

②开启跳过密码验证登录的MySQL服务

mysqld --console --skip-grant-tables --shared-memory

③再打开一个新的cmd,无密码登录MySQL

mysql -u root -p

④ 密码置为空

use mysql

update user set authentication_string='' where user='root';

⑤退出mysql

quit

⑥关闭以-console --skip-grant-tables --shared-memory 启动的MySQL服务,

⑦ 启动MySQL服务。

net start mysql

⑧步骤4密码已经置空,所以无密码状态登录MySQL,输入登录命令:mysql -u root -p

⑨修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

⑩刷新重新进入

quit;

net stop mysql

net start mysql

mysql -u root -p

输入密码,登录成功。

windows下Mysql安装启动及常用操作的更多相关文章

  1. windows下Redis安装及利用java操作Redis

    一.windows下Redis安装 1.Redis下载 下载地址:https://github.com/MicrosoftArchive/redis 打开下载地址后,选择版本 然后选择压缩包 下载 R ...

  2. windows下mysql安装(zip包方式)

    1.安装地址 https://dev.mysql.com/downloads/mysql/ 2. 解压MySQL压缩包 发现并没有my-default.ini 配置文件主要的作用是设置编码字符集.安装 ...

  3. windows下mysql安装失败的一个解决案例

    操作系统:windows8.1,之前安装过mysql,这次安装在配置的最后一部执行“Apply security settings”的过程中弹出经典错误: Access denied for user ...

  4. windows下mysql安装和配置

    历史版本下载地址安装,解压添加环境变量使用cmd中操作mysql进程修改mysql的配置附录:设置mysql随开机自启 TOC 历史版本下载地址 windows的mysql历史版本,推荐使用5.6版本 ...

  5. 解决Windows下mysql无法启动1067错误

    解决过程 查看服务发现mysql未启动   用cmd命令行启动提示启动失败 错误代码1067 打开时间查看器发现mysql错误记录信息为Fatal error: Can't open and lock ...

  6. 64位windows下mysql安装

    登入mysql官网https://www.mysql.com/downloads/,点击Community,选择MySQL on Windows,选择MySQL Installer,选择MySQL S ...

  7. Windows下MySQL安装配置与使用

    1.下载. 下载地址: http://downloads.mysql.com/archives/get/file/mysql-5.7.11-winx64.zip. NavicatforMySQL:ht ...

  8. Windows下MySQL无法启动万能解决方案

    MySQL启动报错 window10上安装了MySQL之前使用都是执行net start mysql 启动,执行net stop mysql关闭. 某天开始启动报错"MySQL 服务无法启动 ...

  9. 破解windows下MySQL服务启动不了的情况下不能对其进行全然卸载的解决方式

    下面的文章主要介绍的是在MySQL服务启动不了的情况下,不能对其进行全然卸载的实际解决的方法的描写叙述,下面就是对解决MySQL服务启动不了的情况下详细方案的描写叙述,希望在你今后的学习中会对你有所帮 ...

随机推荐

  1. Java Runnable和Thread区别

    Thread是多个线程分别完成自己的任务,Runnable是多个线程共同完成1个任务.在实际开发中,一个多线程的操作很少使用Thread类,而是通过Runnable接口完成,好处有: 1. 避免点继承 ...

  2. C# 参数关键字params的作用

    为了将方法声明为可以接受可变数量参数的方法,我们可以使用params关键字来声明数组,要求: (1)在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params ...

  3. js 时间转换毫秒的四种方法(转)

    将时间转换为毫秒数的方法有四个: Date.parse()Date.UTCvalueOf()getTime() 1. Date.parse():该方法接受一个表示日期的字符串参数,然后尝试根据这个日期 ...

  4. echarts中跨域动态获取数据时,当某些对应的数据为空时,鼠标滑动到所在位置卡死

    才疏学浅,万望指点. formatter: function (params) { var rel = params[0].name + "<br />"; rel + ...

  5. MySQL----navicat for mysql(破解版)可视化数据库操作

    本博文介绍破解版navicat for mysql的安装方法及常用操作 navicat for mysql是一个专业的MySQL数据库图形化界面工具. 百度云下载地址:https://pan.baid ...

  6. 苹果App Store提交app审核时EULA(终端用户软件使用条款)的注意事项等政策解读

    写在前面,今天是2014年10月14日,以下内容可能会随着时间的推进而失效,请注意时效性 当在App Store提交app审核的时候,苹果通常会要求开发者提供一个EULA,苹果默认提供了一个,地址:  ...

  7. 【vue】------浅谈vue------【William】

    ### Vue > Vue是一个前端js框架,由尤雨溪开发,是个人项目 Vue近几年来特别的受关注,三年前的时候angularJS霸占前端JS框架市场很长时间,接着react框架横空出世,因为它 ...

  8. HTML5 添加视频和音频(响应式视频)

    最初的 HTML5规范呼吁所有浏览器内置支持使用 Ogg格式① 直接播放视频或音频(无需插件).但是由于 HTML5工作组的内部争议,曾经作为基线标准的支持 Ogg(包括 Theoravideo 和 ...

  9. JavaScript入门学习(0)相关 软件工具

    JavaScript本地脚本编辑工具(1st JavaScript Editor Pro ) 必要设置     https://pan.baidu.com/s/1XoaNA9o0qt2eJfLgoZ5 ...

  10. 2.6 USB摄像头驱动之USB描述符

    学习目标:分析USB摄像头驱动的描述符: 一.USB设备描述符 在usb设备驱动分析那一节,也用到了usb描述符. usb描述符可分为: USB设备描述符(usb_device_descriptor) ...