mysql精简单机版,免登录,可复制,不启动服务与本机mysql无冲突

news/2025/1/22 8:32:13/

突然有了个需要在本地使用的mysql需求,要求不用安装,随拷随用,不影响其他mysql服务,占用空间小.基于这种需求做了个精简版的mysql

首先下载mysql的zip安装包

> windows 64位
> https://repo.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.36-winx64.zip
> windows 32位
> https://repo.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.36.zip

建议32位和64位按系统下载,实测不同位对动态链接库的需求区别还是比较大.32位并不一定可以在64位下运行.

将需要的版本压缩包解压

解压后删除docs,include文件夹,对于bin目录下的.pdb文件,和一些用不到的辅助程序都可以删除.

最后bin目录如下

lib目录如下

share目录如下

share目录除各个国家的语言之外sql脚本不要轻易删除,而且这个目录中的sql在初始化时会使用,占用空间都不大。

文件处理完成之后整个文件夹大小在100M左右,压缩后能到40M左右

编写my.ini配置文件

[mysqld]
# 设置13307端口
port = 13307
# 允许最大连接数
max_connections=200
# 服务端使用utf8符集
character-set-server=utf8
# 创建新表时将使用INNODB存储引擎
default-storage-engine=INNODB
#绑定127.0.0.1地址,最后是以skip-grant-tables模式启动,限制本地连接,增加安全性<br>bind-address=127.0.0.1

编写启动脚本setup.bat

@echo off
rem simple mysql.5.7.35 win32
copy "C:\Windows\system32\msvcr120.dll" %~dp0bin
copy "C:\Windows\system32\msvcp120.dll" %~dp0bin
if not exist "%~dp0data" md "%~dp0data"
if not exist "%~dp0data\ibdata1" (
%~dp0bin\mysqld.exe --initialize --console
xcopy %~dp0template_data %~dp0data /s /f /h /q /e /y
)
start /b %~dp0bin\mysqld.exe --defaults-file=%~dp0my.ini --skip-grant-tables --shared-memory
echo 'mysqld server is running...'

最终目录

脚本说明

1.template_data和bin同级别,此文件夹存储复制过来的schema,注意复制的时候需要把ibdata1文件也复制过来

2.之所以复制msvcr120.dll和msvcp120.dll 因为在windows7系统中可能在运行32位/64位程序时会提示这两个dll文件缺失(其实并没有缺失,只是没有找到)

3.因为使用的是innodb引擎,所以mysql的数据表复制时是需要ibdata1文件的(innodb引擎下将表结构存储在ibdata1文件中,myisam则不用),因此以data文件夹下是否存在ibdata1文件来判断mysql是否被初始化,若没有初始化,则进行mysqld初始化,然后将tempalte_data文件夹中的所有文件都复制到data文件夹下

4.加入--skip-grant-tables,有了这个参数,本机可以直接进入mysql,而不用管用户名密码是多少.因为初始化之后系统会生成一个复杂密码,这个用脚本修改挺麻烦的,所以就直接跳过权限表的加载了,

启动

直接双击setup.bat就行,建议不要在C盘进行上述操作,C盘可能需要管理员权限。

经测试一般的增删查改功能都能正常使用,mysql,navicat,jdbc都可以正常连接和使用。

生活中总是充满了各种选择,点餐纠结,出行选择,聚餐座位,团队投票结果不明,随机抽签一锤定音等等!为了解决这个问题,我开发了一款【随机选择决定转盘工具】微信小程序,随机做出决策!无论是随机抽选还是投硬币,都能轻松搞定。现在通过微信小程序二维码就能体验!快来试试吧,让选择变得更简单!


http://www.ppmy.cn/news/1565176.html

相关文章

记录一次 centos 启动失败

文章目录 现场1分析1现场2分析2搜索实际解决过程 现场1 一次断电,导致 之前能正常启动的centos 7.7 起不来了有部分log , 关键信息如下 [1.332724] XFS(sda3): Internal error xfs ... at line xxx of fs/xfs/xfs_trans.c [1.332724] XFS(sda3): Corruption of in-memory data…

无人机飞手考证难度增加,实操、地面站教学技术详解

随着无人机技术的快速发展和广泛应用&#xff0c;无人机飞手考证的难度确实在不断增加。这主要体现在对飞手的实操技能和地面站操作技术的要求上。以下是对无人机飞手考证中实操和地面站教学技术的详细解析&#xff1a; 一、实操教学技术详解 1. 无人机基础知识学习&#xff1…

C++17 新的求值顺序规则:小白友好版指南

嘿&#xff0c;C 小白们&#xff01;今天&#xff0c;我们要聊一个听起来有点枯燥&#xff0c;但实际上超重要的话题——C17 中的求值顺序规则。别急&#xff0c;我会用最通俗易懂的方式&#xff0c;带你一步步搞懂这个知识点&#xff0c;让你在编程路上少走弯路&#xff0c;写…

学习华为熵减模型:激发组织活力(系列之三)

目录 为什么学习华为&#xff1f; 学习华为什么&#xff1f; 一、势&#xff1a;顺势而为&#xff0c;在风口上猪都会飞起来。 二、道&#xff1a;就是认识和利用规律层面&#xff0c;文化和制度创新就是企业经营之道。 三、法&#xff1a;就是一套价值管理的变革方法论。…

【ROS2】☆ launch之Python

☆重点 ROS1和ROS2其中一个很大区别之一就是launch的编写方式。在ROS1中采用xml格式编写launch&#xff0c;而ROS2保留了XML 格式launch&#xff0c;还另外引入了Python和YAML 编写方式。选择哪种编写取决于每位开发人员的爱好&#xff0c;但是ROS2官方推荐使用Python方式编写…

【C++】模板(进阶)

本篇我们来介绍更多关于C模板的知识。模板初阶移步至&#xff1a;【C】模板&#xff08;初阶&#xff09; 1.非类型模板参数 1.1 非类型模板参数介绍 模板参数可以是类型形参&#xff0c;也可以是非类型形参。类型形参就是我们目前接触到的一些模板参数。 //类型模板参数 …

利用开源AI智能名片2+1链动模式S2B2C商城小程序满足用户的自恋心理

摘要&#xff1a;随着互联网技术的飞速发展&#xff0c;数字化营销手段层出不穷&#xff0c;为企业提供了前所未有的市场机遇。开源AI智能名片21链动模式与S2B2C商城小程序的结合&#xff0c;正是这一背景下的创新尝试。本文旨在深入探讨如何利用这两种创新工具满足用户的自恋心…

什么是软件架构

什么是软件架构 程序员说&#xff0c;软件架构是要决定编写哪些C程序或OO类、使用哪些库和框架 程序经理说&#xff0c;软件架构就是模块的划分和接口的定义 系统分析员说&#xff0c;软件架构就是为业务领域对象的关系建模 配置管理员说&#xff0c;软件架构就是开发出来的…