Пока я знаю, что я, как человек, могу проверить свои привилегии, запросив SHOW GRANTS FOR CURRENT_USER
. Но теперь я хотел бы, чтобы мое php-программное обеспечение могло самостоятельно проверять свои привилегии, и этот запрос на самом деле не выводит что-то простое для манипулирования с помощью кода:
"GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'
"
"GRANT SELECT, INSERT, UPDATE, DELETE ON `database`.* TO 'user'@'ip'
"
"GRANT USAGE ON *.* TO 'user'@'ip'
"
... и, возможно, другой формат, о котором я не знаю.
Можно ли легко восстановить фактический массив привилегий для конкретной базы данных? или мне нужно придумать какое-то замученное регулярное выражение для разбора этих строк?