更新记录

2022年4月16日:本文迁移自Panda666原博客,原发布时间:2021年7月10日。

2022年4月16日:更新MySQL下载链接。

一、说明与准备工作

根据MySQL官网提供的安装MySQL的方式有2种:

  • 通过官方msi安装包安装,支持离线安装和在线安装。
  • 通过官方压缩包解压安装。

官方msi安装包方式安装直接点击exe,跟着引导安装即可。下面使用官方提供的压缩包进行安装MySQL。安装过程中使用的软件版本信息:

  • 操作系统版本:Windows Server 2019 Datacenter 1809版本。您如果没有Windows Server 2019,可以从微软官方下载评估版本。
  • MySQL版本: MySQL 8.0.26 x64,您也可以从其他地方下载MySQL,比如:登录Oracle从官方下载商业版本。
  • 命令行工具:Powershell版本 5.1.17763.1971。Windows Server 2019自带的。
  • 测试使用的虚拟机:VMware Workstation 16 Pro。

二、开始配置

首先确保您的Windows Server 2019 可以正常运行,这里不展示如何安装和运行Windows Server 2019 。

切换到Program Files下

cd 'C:\Program Files'

新建文件夹用于存放MySQL程序

New-Item -ItemType Directory "mysql"
cd .\mysql

开始下载MySQL程序

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Invoke-WebRequest -uri "https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-8.0/mysql-8.0.26-winx64.zip" -OutFile "mysql-8.0.26-winx64.zip"

验证md5是否正确,通过对比,MD5正确

Get-FileHash "./mysql-8.0.26-winx64.zip" -Algorithm MD5| Format-List

解压压缩包

Expand-Archive -Path ".\mysql-8.0.26-winx64.zip" -DestinationPath ./

进入具体版本的mysql的bin目录

cd .\mysql-8.0.26-winx64\bin

执行安装命令

./mysqld.exe --initialize --console
#指定自定义数据存放目录
#./mysqld.exe --initialize --console --datadir=./pandaData
#指定自定义配置文件
#./mysqld.exe --initialize --console --datadir=../pandaData --defaults-file=C:\my.ini

注意:此时您可以新建一个MySQL自定义配置文件,比如:C:/panda666.ini,在安装中使用,我在文章末尾放置了一份配置文件。

注意:这时候命令行会提示安装信息,并显示默认root用户密码,请保存该密码,后面需要使用,比如:

将mysql安装为Windows的服务

./mysqld.exe -install

启动mysql服务

net start mysql

登陆数据库,输入刚刚默认初始化的密码即可

./mysql.exe -u root -p

修改root用户密码

use mysql;
alter user 'root'@'localhost' identified by '密码';
add user 'root'@'*' identified by '密码';
UPDATE User SET Host = '%' WHERE 1;
flush privileges;
commit;

停止MySQL服务

net stop mysqld
或者
sc stop mysqld

删除MySQL服务(需先停止服务)

sc delete mysqld
#或者
mysqld -remove

三、配置文件

panda666.ini

[mysqld]
# 设置mysql的安装目录,也就是刚才我们解压的目录
basedir=C:/MySQL-8.0.23-winx64
# 设置mysql数据库的数据的存放目录
# datadir=C:/mysql-8.0.23-winx64/data
# 设置默认使用的端口
port=3306
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人试图攻击数据库
max_connect_errors=10
# 服务端使用的字符集
character-set-server=utf8mb4
# 数据库字符集对应一些排序等规则使用的字符集
collation-server=utf8mb4_general_ci
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件作为认证加密方式
# MySQL8.0默认认证加密方式为caching_sha2_password
default_authentication_plugin=mysql_native_password [mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4 [client]
default-character-set=utf8mb4
port=3306

使用PowerShell安装MySQL的更多相关文章

  1. 在Windows上安装MySQL(免安装ZIP版)

    在 Windows 上安装MySQL(免安装ZIP版) 因为一些原因,重新安装了MySQL数据库,重装时习惯性使用最新版下载 此过程中发现MySQL 5.7.12 和MySQL 5.6的安装有些区别: ...

  2. Windows10系统的Linux子系统中安装MySQL数据库心得

    后端开发童鞋们, 自己开发机用的是Windows系统电脑(台式机或笔记本), 而开发的程序和使用的数据库等要运行在Linux服务器上, 这种情况有木有? 提前声明: 本文并不讨论操作系统的比较, 以及 ...

  3. win10安装MySQL免安装版

    一:下载并解压 这个就不多说了https://dev.mysql.com/downloads/mysql/,简单的很 二:MySQL根目录下新建my.ini [mysql] # 设置mysql客户端默 ...

  4. Win 10安装mysql以及常见问题总结

    一.mysql免安装版本配置1.从官网下载安装包,解压后,在电脑属性环境变量的path中配置bin的路径 2.配置my.ini [mysql] # 设置mysql客户端默认字符集 default-ch ...

  5. Powershell操作MySQL

    最近再用Python写一些监控脚本,并将监控数据输出到MySQL中,最后通过Python抓取MySQL中的数据进行监控汇总告警 考虑到一些微软产品使用Powershell更为方便,于是找了些资料,尝试 ...

  6. Centos6.5下编译安装mysql 5.6

    一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...

  7. 在Ubuntu 16.10安装mysql workbench报未安装软件包 libpng12-0错误

    1.安装mysql workbench,提示未安装软件包 libpng12-0 下载了MySQL Workbench 6.3.8   在安装的时候报错: -1ubu1604-amd64.deb 提示: ...

  8. ubuntu安装mysql

    好记性不如烂笔头,记录一下,ubuntu安装mysql的指令. 安装MySQL: sudo apt-get install mysql-server sudo apt-get install mysq ...

  9. Linux1 在Linux(CentOS)上安装MySql详细记录

    前记:  毕业两年了,前两天换了份工作,由以前的传统行业跳到了互联网行业.之前的公司一直在用WinServer2003+Tomcat+SqlServer/Oracle这套部署环境.对于Linux+To ...

随机推荐

  1. Spring-JdbcTemplate(注入到spring容器)-02

    1.导入spring-jdbc和spring-tx坐标 <dependency> <groupId>junit</groupId> <artifactId&g ...

  2. MySql各版本

    Mysql 各个版本区别: 1.MySQL Community Server 社区版本,开源免费,但不提供官方技术支持. 2.MySQL Enterprise Edition 企业版本,需付费,可以试 ...

  3. CURDATE()与NOW()的区别

    两者都是mysql中的函数,都是得到当前时间,区别是: CURDATE()查询出的是当前天的开始时间点,比如今天是 2015.02.03号,那不管我在今天什么时间点查询,结果都是今天的凌晨,即今天的开 ...

  4. shell基础知识讲解

    第1章 shell基础 1.1 什么叫做shell编程 shell编程也叫做bash高级编程语法 1.2 常见的shell命令解释器 bash            redhat和centos使用 d ...

  5. 【面试普通人VS高手系列】Redis和Mysql如何保证数据一致性

    今天分享一道一线互联网公司高频面试题. "Redis和Mysql如何保证数据一致性". 这个问题难倒了不少工作5年以上的程序员,难的不是问题本身,而是解决这个问题的思维模式. 下面 ...

  6. vscode 开发项目, Prettier ESLint的配置全攻略(基础篇)

    我们在做项目尤其是多人合作开发的时候经常会因为不同的开发规范和代码风格导致出现冲突, 为了能统一代码风格和规范我们需要使用到prettier和eslint,接下来就一vscode编辑器为例详细讲解下: ...

  7. 基础学习:社会工程学---利用Kali下的setoolkit进行钓鱼网站制作

    利用Kali下的setoolkit进行钓鱼网站制作 1.打开kali2019,输入setoolkit,打开setoolkit模块 2.输入命令1,进入钓鱼攻击页面 3.输入命令2,进入web钓鱼攻击页 ...

  8. ubuntu 18及以上版本配置IP的方法,你get了吗

    本文讲讲 Ubuntu 18 及以上版本配置 IP 的方法,为什么它值得一讲,因为以 Ubuntu 16 为首的版本的配置方法已经不适用了,如果你还不知道,那本文正好 get 一个新技能. Ubunt ...

  9. [笔记] 2-sat

    定义 简单的说就是给出 \(n\) 个集合,每个集合有两个元素,已知形如选 \(a\) 则必须选 \(b\) 的若干个条件, 问是否存在从每个集合选择一个元素满足条件的方案,通常可以题目只要求任意一种 ...

  10. 【代理是什么?】nginx快速入门+反向代理hexo个人博客

    @ 目录 前言 本文说明 请大家务必查看 工作原理 正向代理 反向代理 环境准备 详细版 入门:搭建步骤 配置阿里云epel源: yum安装nginx: 启动nginx: 配置default.conf ...