Привилегии уровня таблиц в MySQL
Необходим был пользователь для БД который не должен был видеть и соответственно вносить изменения в некоторые таблицы.
Долго не мог придумать решение, в итоге нагуглил такой вариант.
mysql -e "select 'grant all privileges on ', table_name, 'to user@%;' from information_schema.tables where table_schema = 'databasename' and table_name not in ('table_without_access', 'table_without_access');" > priv.txtНа выхлопе получил файл следущего содержания
grant all privileges on mis_content to user@%; grant all privileges on lang to user@%; ...Который после привел к кошерному виду с помощью sed'a и получил по сути команды для выполнения.
grant all on `databasename`.`mis_content` to 'user'@'%'; grant all on `databasename`.`lang` to 'user'@'%'; ...