MySQL转储查看器

我是一个Linux用户,但是,我在办公室提供了一台Windows笔记本电脑。 我可以用PHPmyadmin启动一个小型Web服务器,甚至可以上传到远程系统并导入到数据库中,但是,为了我所做的,我想知道是否有更简单的方法?

我有一个数据库的MySQL转储文件。 我需要知道是否有什么可以读取MySQL转储文件,然后让我执行select(查找数据),而不必有一个实际的MySQL数据库。 几乎就像一个虚拟的MySQL数据库一样的文件。 基本上,我试图交叉引用数据,我不完全想创build一个新的数据库,进行导入,然后像这样读取数据。 我会如果我必须,但只是想知道是否有某种程序,可以读取我的转储文件,让我只是看到它,就像我连接到数据库。

有几个工具可以查看那里的转储文件。 请记住,这只是一个巨大的文本文件与SQL命令。 任何SQL Query Analizer工具都可以打开并查看文件。 没有工具(我见过)可以让你把txt文件作为一个可编辑的数据库。 即使是MYSQL Workbench GUI也有一个内置的。

作为导入/修改/ etc / dump文件的一个稍微简单的方法,只需使用mysql工作台将转储文件导入到本地运行的数据库服务器中…并在完成时将其导出。 不需要使用myPHPAdmin和apache来完成整个PHP框架…以及其他一切。

如果你不想要一个完整的本地mysql安装,你也可以将你的mysql-dump导入到一个sqlite数据库中,并(临时)使用它。 为了转换mysql转储你可以使用这个 …

我一直回到如何查询数据库快照的问题,最后抛出一个Docker调用的集合,这些调用为.sql转储文件启动了phpmyadmin。 这不是一个轻量级的解决scheme,但它很快(首次引入Docker镜像之后),创build的数据库和服务器都是一次性的。

下面的(不完美和OSX特定的)脚本,它是一个拉线或启动相关的Docker机器,将转储文件加载到MySQL服务器,并popup打开浏览器与phpmyadmin指向相关的数据库:

#!/bin/bash ROOT_PWD=root if [ $# -lt 1 ]; then echo "Need a dump file" exit 1 fi dump="$1" IP=$( docker-machine ip default ) if ! $( docker ps | grep -q "dump_db$" ); then # create the data container docker create --name dump_data -v /var/lib/mysql mysql # run the sql server docker run --name dump_db \ --volumes-from dump_data -v /var/lib/mysql:/var/lib/mysql \ -e MYSQL_USER=mysql -e MYSQL_PASSWORD=mysql \ -e MYSQL_DATABASE=dump -e MYSQL_ROOT_PASSWORD=$ROOT_PWD \ -it -p 3306:3306 -d mysql # wait for it to be up and running... mysql_port=$( docker port dump_db | grep "3306/tcp" | awk -F: '{print $2;}' ) while ! curl http://$IP:$mysql_port/ do echo "waiting for mysql server..." sleep 1 done fi # upload the dump docker exec -i dump_db mysql -uroot -p$ROOT_PWD dump < $dump if ! $( docker ps | grep -q "dump_phpmyadmin$" ); then # run phpmyadmin docker run -d --link dump_db:mysql -e MYSQL_USERNAME=root --name dump_phpmyadmin -p 80 ahebrank/phpmyadmin fi web_port=$( docker port dump_phpmyadmin | grep "80/tcp" | awk -F: '{print $2;}' ) open "http://$IP:$web_port/db_structure.php?server=1&db=dump" 

https://github.com/ahebrank/dumpviewer/blob/master/view

这与将文件加载到本地mysql服务器的原始答案并不完全不同。 但三年后,集装箱进行configuration,集装箱化工作变得更容易一些。