便携数据库:5分钟在移动硬盘搭建一个随插随用的MySQL(详细)

发布于 2023-09-08  4.97k 次阅读


本文于 2023年9月8日 8:01 更新,注意查看最新内容

前言

很早之前就想在移动硬盘搭建一个数据库,但当时情况和现在不太一样,那时候觉得反正本地可以用 glogg 一类的大文件查找器,想搜索某个大文件的数据内容,也只要多花几分钟,并不会特别麻烦。

但随着数据量的增多,这一点仅存的优势就开始渐渐消无,再者就是越来越多非 TXT 的文件需要查阅,导致使用这类查找器极易出现最后搜索的内容出现乱码的的情况。

所以,没办法,需求促使现状的改变,又开始考虑如何在移动硬盘装一个数据库。

为什么使用移动硬盘安装?

首先我笔记本是丐版,容量本身就有限,再者考虑,笔记本的便携性不如移动硬盘,我可以随时随地带着移动硬盘,但是我没法随时随地带着笔记本电脑。

为什么选择 MySQL?

首先考虑的是 MySQL 的市场占有率,作为使用最广泛的一款数据库,使用 MySQL 后如果遇到问题,能更快找到已知的解决方案,其次就是数据量的问题,因为本次要处理的数据会比较大,考虑到很多方面的原因,最终还是考虑了 MySQL。

最后要说明的是,本人对数据库基本一窍不通,所有教程内容均为网上现学,不足之处,不吝赐教。

下载

下载 MySQL 社区版压缩包

路径在:MySQL官网->下载页面->点击页面中 MySQL Community (GPL) Downloads->选择 MySQL Community Server->选择对应版本,下载 ZIP Archive

考虑到路径比较深,如果你要下载的是 MySQL 8.1.0,可以直接点击下方链接下载。

需要注意的是下方链接地址为 MySQL 官方提供,这里仅做展示。

https://cdn.mysql.com//Downloads/MySQL-8.1/mysql-8.1.0-winx64.zip

安装

1、将下载的压缩包解压到你移动硬盘要安装的目录下。

这里需要的注意的是,因为压缩的时候的时候原本有一层文件夹,默认解压会嵌套一层文件夹,等于说默认解压后的层级是文件夹/文件夹/文件,如果可以,可以将文件移动成文件夹/文件。

虽然我觉得好像无关痛痒,但是貌似参考文章的作者这样操作了,建议也可以这么做一下。


2、然后在文件目录下按住 shift 键,右键选择在此处打开Powershell窗口

这是 Windows 下的一个快速在当前目录下运行 CMD 命令行的方式,当然你有更好的方法也可以自行使用。


3、运行命令 bin\mysqld --version

PS:据原作者说,在某些较老的 Windows 7 下运行,可能出现报错,原因是系统中没有安装 VC++ 运行库,可以自行在微软官网下载。

这里我推荐大家下载一个 微软常用运行库合集,这是某个大佬自己制作的软件包,可以一键安装大部分常用的运行库,建议大家都可以装一个。

因为百度很多的下载链接,这里就提供下载链接了,大家可以使用关键词:微软常用运行库合集 吾爱破解,搜索到一些相对靠谱的下载链接。


4、接下来,我们需要为数据库指定一个存放数据的位置,这里我们可以创建一个 data 的文件夹用来存放数据,在命令行输入命令mkdir data,等待一会就会发现压缩包根目录下的 data 文件夹就创建好了。


5、这时我们需要让 MySQL 对 data 文件夹进行初始化(初始化只需要一次),初始化以后 data 文件夹就是存放数据的地方了,我们输入命令:

bin\mysqld --datadir=.\data --initialize --console

初始化命令有三个参数:

1、数据文件夹路径; 2、要执行的操作,即初始化 3、在命令行中打印详情。


6、输入上述命令初始化成功之后,MySQL 会告知一个临时的 root 密码,这个密码一定要复制出来,之后登陆时会用到,且实际测试后续命令好像会覆盖临时密码。

PS:密码为root@localhost:后面内容。

(来源:B站@捏造的信仰)


7、初始化之后,就可以正式运行 MySQL 数据库了。

命令为初始化命令去掉第二个参数

bin\mysqld --datadir=.\data --console

(来源:B站@捏造的信仰)


8、成功运行服务器后,现在我们重新打开一个命令行,方法参考第 2 步。

目的有两个,第一个是确认服务器是否可用,另外就是修改刚才提供的临时密码。

注意:运行上述 7 步的命令窗口不要关闭,使用数据库时需要一直保持服务器的运行!

在打开的命令窗口输入bin\mysql -u root -p,并输入之前复制的临时密码。


9、登陆之后,你会发现任何的 SQL 语句都无法执行,这是因为 MySQL 为了安全考虑,必须先进行重置临时密码,才允许使用。

这里我们使用 ALTER USER 语句来重置密码:

ALTER USER user() IDENTIFIED BY 'root123';

重置之后,我们输入任意语句show databases;就可以正常执行了。

测试

这里我们先使用 Navicat 导入一部分测试数据进行测试。

Navicat 是什么?

Navicat 是一款专业的数据库的管理软件,可以同时管理不同的数据库类型,其可视化的界面深受广大用户喜爱(这句是我编的)。


首先我们先点击左上角链接,输入相关的信息。

在打开的服务中,右键创建一个数据库。

打开创建的数据库,点击表后右键选择导入向导

然后点击要导入的文件类型,我这里用的是 TXT。

进入下一步后,如果导入的 TXT 文件的每条内容是以 , 或者; 来划分的,那么就要在这一步选择一下字段分隔符,当然你也可以自定义符号。

(来源:CSDN@mygoes)

后续步骤,如果没有特殊情况,全部默认即可。


随机测试一下查询,120W 条数据,查询只要 0.07 秒,不得不说,比大文件查找工具要快得多,毕竟各自擅长的方向也不一样。


最最关键的一步来了,拔掉移动硬盘,再插入移动硬盘。

在 MySQL 根目录下运行按照安装部分的步骤 1 打开命令工具,输入bin\mysqld --datadir=./data --console每次启动都需要先运行)。

再打开 Navicat 便携版,连接数据库,打开表,查询,一切如常!

至此整篇教程完结。

参考

【演示】5分钟快速在U盘上搭建可随身带走的MySQL数据库

《在U盘上搭建MySQL数据库》

《导入 txt 文件数据到 MySQL 表》

鸣谢

本文安装部分几乎是原封不动参考的 B站 Up主 @捏造的信仰的视频教程,再次表示感谢,感谢提供详细的视频教程。


这短短的一生,我们最终都会失去。