我试图弄清楚如何在数据库中定位一个url的所有事件。我想搜索所有表和所有字段。但我不知道从哪里开始,甚至不知道是否有可能。
当前回答
一个简单的解决方案是这样做的:
mysqldump -u myuser --no-create-info --extended-insert=FALSE databasename | grep -i "<search string>"
其他回答
我正在寻找相同的,但找不到它,所以我在PHP中做了一个小脚本,你可以在: http://tequilaphp.wordpress.com/2010/07/05/searching-strings-in-a-database-and-files/
好运! (我删除了一些私人代码,如果我没有在这个过程中破坏它,请告诉我:D)
在phpMyAdmin的搜索功能是可用的:
选择特定的数据库而不是表。 点击“搜索”标签 输入你想要的搜索词 选择要搜索的表
phpMyAdmin屏幕截图:
'Search'特性也可以在MySQL Workbench中使用:
数据库菜单>查询表数据 选择要搜索的数据库和表(只会在选定的表中搜索) 在搜索中你可以使用wildChars。
MySQL Workbench屏幕截图:
您可以通过使用HeidiSQL而不生成Db转储来实现这一点
步骤:
1)在GUI左侧面板中选择需要搜索的数据库。
2)导出>导出数据库为SQL
3)在表格工具窗口中选择“查找文本”选项卡。
4)提供你的字符串进行搜索,然后点击“FIND”。
5)它将列出所有包含我们字符串的表。
6)选择相关度%较高的行。
7)点击“查看结果”
SQLyog是基于GUI的解决方案,可以跨所有列、表和数据库进行数据搜索。用户可以自定义搜索,将其限制为字段、表和数据库。
在它的数据搜索功能中,用户可以像使用谷歌一样搜索字符串。
这里有两个简单的代码。首先执行mysqldump:
mysqldump -uUSERNAME -p DATABASE_NAME > database-dump.sql
然后grep sqldump文件:
grep -i "Search string" database-dump.sql
也可以找到/替换并重新导入到数据库中。