Windows版MySQL5.7解压直用(免安装-绿色-项目打包直接使用)

windows下mysql分类

MySQL分为 ==安装版和解压版 ==

  1. 安装版:
    安装方便,下一步------下一步就OK了,但重装系统更换环境又要重新来一遍,会特别麻烦
  2. 解压版==(推荐)==:
    这种方式(项目打包特别方便)能更深了解mysql的配置,以后遇到问题,也就可以自行解决了,我个人推荐解压版MySQL,最主要的是学会这一种方法,你会发现其他软件甚至是linux系统软件安装也一通百通了。

一、下载mysql

下载地址如下:
https://downloads.mysql.com/archives/community/

下载解压后是文件目录结构是这样的

二、配置环境变量

2.1方法一:手动配置环境变量



2.2方法二:使用cmd命令配置环境变量

cmd 复制代码
setx -m PATH "%PATH%;C:\WF\usr\local\mysql-5.7.44-winx64\bin""
不加 -m 修改的是当前用户的环境变量,加 -m 修改的是系统环境变量。

也可以写成bat文件

三、安装mysql

  1. 安装前运行微软常用运行库全集(也可能称为依赖)
  2. 新建my.ini文件,文件内容如下:
ini 复制代码
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[client]
 port = 3306
 default-character-set = utf8
[mysqld]
 
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
 
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
port = 3306 
# These are commonly set, remove the # and set as required.
 basedir =C:\WF\usr\local\mysql-5.7.44-winx64
#datadir =C:\WF\usr\local\mysql-5.7.44-winx64\data #默认就是这个地址,可以省略
# server_id = .....
 character_set_server = utf8
 
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 
 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
  1. 初始化mysql

或者用powershell

powershell 复制代码
mysqld --initialize-insecure 

mysqld --initialize-insecure 命令用于初始化MySQL服务器,但它不会要求用户设置root密码,而是会创建一个没有密码的root用户。这个命令通常在首次安装MySQL或重新安装MySQL时使用。

  1. 安装mysql,启动服务
powershell 复制代码
mysqld -install
net start mysql 

四、登陆配置mysql

  1. 创建用户
sql 复制代码
CREATE USER 'uuuu'@'localhost' IDENTIFIED BY 'pppp';

其中,uuuu是新用户的用户名,pppp是用户的密码。

创建新数据库:使用 utf8mb4 字符集和 utf8mb4_unicode_ci 校对顺序(collation)来创建新数据库。

  1. 新建数据库
sql 复制代码
CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  1. 为用户授权:假设你有一个名为 mydatabase 的数据库,并希望新用户拥有这个数据库的所有权限:
sql 复制代码
GRANT ALL PRIVILEGES ON mydatabase.* TO 'uuuu'@'localhost';
  1. 设置远程访问
bash 复制代码
GRANT ALL PRIVILEGES ON mydatabase.* TO 'uuuu'@'%';

如果你希望新用户能够访问所有数据库,可以使用:

sql 复制代码
GRANT ALL PRIVILEGES ON *.* TO 'uuuu'@'localhost';

如果你希望新用户只能从特定的 IP 地址访问,你可以将 localhost 替换为那个 IP 地址。

  1. 刷新权限:

为了让新的权限设置立即生效,执行:

sql

bash 复制代码
FLUSH PRIVILEGES;
  1. 退出 MySQL:
sql 复制代码
EXIT;

注意:

始终确保在创建新用户或授予权限时,你清楚该用户将拥有哪些权限,并且这些权限是合适的。不要过度授权,以防止潜在的安全风险。

五、配置远程连接mysql【创建用户和数据时如未设置远程的,已设置可忽略本章】

如果你在远程机器上使用第三方工具(可视化工具)访问 MySQL,确保 MySQL 服务器的配置允许远程连接。这通常涉及到编辑 MySQL 的配置文件 (my.cnf 或 mysqld.cnf) 并确保 bind-address 参数设置为 0.0.0.0 或注释掉这一行。然后,重启 MySQL 服务。

选择 mysql 数据库:在 MySQL 提示符下,选择 mysql 数据库。

sql
use mysql;

更新用户表:更改 user 表,将 host 设置为 '%' 允许所有 IP 地址连接【已设置uuuu权限的,此步骤可省略】。

sql
update user set host='%' where user='uuuu';

权限刷新:执行以下命令,使权限设置立即生效。

sql
flush privileges;

退出 MySQL:执行以下命令,退出 MySQL。

sql
exit;

配置防火墙:允许 3306 端口通过防火墙。

powershell 复制代码
New-NetFirewallRule -DisplayName "MySQL Port 3306" -Direction Inbound -Protocol TCP -LocalPort 3306 -Action Allow

注意:在远程连接 MySQL 时,请确保你的网络环境和防火墙设置允许远程连接,并且使用强密码来保护你的数据库账户,以防止未经授权的访问

六、附:zip版MySQL卸载方法

zip版MySQL卸载步骤如下:

cmd 复制代码
net stop mysql
mysqld -remove


  1. 关闭MySQL服务 。以管理员身份运行cmd,执行命令net stop mysql或者右键我的电脑,在管理-服务-停止MySQL。
  2. 删除服务 。执行命令mysqld --remove。
  3. 删除MySQL文件 。将MySQL安装目录下的所有文件删除。
  4. 需要注意的是,在执行卸载操作前,最好先备份MySQL数据库中的重要数据,以免丢失。此外,如果MySQL服务正在运行,需要先停止服务才能执行卸载操作。
相关推荐
火龙kess26 分钟前
使用FreeNAS软件部署ISCSI的SAN架构存储(IP-SAN)练习题
linux·运维·服务器·网络·windows·tcp/ip·架构
rkmhr_sef39 分钟前
frp内网穿透云服务器。云服务器映射多个家庭局域网内网端口。家庭Windows主机内网运行多个web程序
服务器·前端·windows
云计算DevOps-韩老师1 小时前
【网络云计算】2024第52周-每日【2024/12/23】小测-理论&实操-解析
linux·运维·服务器·开发语言·网络·云计算·perl
奥顺互联V2 小时前
一次性部署:使用Docker部署PHP应用
大数据·mysql·开源·php
小黄人软件2 小时前
20241220流水的日报 mysql的between可以用于字符串 sql 所有老日期的,保留最新日期
数据库·sql·mysql
dessler2 小时前
Docker-如何启动docker
运维·docker·云原生·容器·eureka
zhy295632 小时前
【DOCKER】基于DOCKER的服务之DUFS
运维·docker·容器·dufs
无为之士2 小时前
Linux自动备份Mysql数据库
linux·数据库·mysql
秋名山小桃子2 小时前
Kunlun 2280服务器(ARM)Raid卡磁盘盘符漂移问题解决
运维·服务器
与君共勉121382 小时前
Nginx 负载均衡的实现
运维·服务器·nginx·负载均衡