在mysql数据库中搜索字符串而不知道我可能找到的表或列时,我通常会求助于
xp = 1
xp = xp + 1
print (xp) # 2
转储了大量不需要的数据,忽略了为此目的而发明的权利,并且使得结果本地化变得相当困难。有更方便,更高效的方式吗? (安装第三方软件除外。)
关于重复的问题:正如评论指出的那样,我不仅限于SQL查询,而是接受任何解决方案 - 可能是bash脚本,我可能没见过的某些CLI函数,或者按照建议点击DB文件。
答案 0 :(得分:0)
我找到了一个find
命令,列出了包含特定字符串的文件:
find [path of data folder of database]/*.ibd -type f -exec grep -i '[search string]' {} +
找到时的输出:
Binary file [path]/[table].ibd matches
未找到任何内容时都不会输出任何内容。
意思是:
find : linux find command
path : the path pointing to the database folder under mysql/data
directory which contains the table's ibd files
-type f : only search for files
-exec : execute this while listing
grep -i : case insensitive text search
string : string to search for
对于其他人,请阅读:
https://serverfault.com/a/343177
此处的用法相同:
http://www.valleyprogramming.com/blog/linux-find-grep-commands-exec-combine-search