I have multiple MySQL databases(50+) and I want to replace a string in all of them, is there anyway to search and replace in all the databases?
Server is CentOS and I have SSH root access.
asked Jan 28, 2016 at 0:20
1 Answer 1
Not really.
Instead, you could do something like
SELECT CONCAT("UPDATE ", table_schema, ".", table_name,
" SET foo = replace(foo, 'this', 'that');")
FROM information_schema.tables
WHERE ...
to generate the desired 50+ UPDATE
statements. Then copy and paste them into the mysql commandline tool.
(Or you could construct a shell script using that. Or...)
answered Jan 28, 2016 at 0:24
lang-sql