僞代碼查詢:
SELECT databases FROM mysql.databases WHERE owner = 'myUser'
,或者會做這項工作有任何疑問?
僞代碼查詢:
SELECT databases FROM mysql.databases WHERE owner = 'myUser'
,或者會做這項工作有任何疑問?
SELECT COUNT(*) FROM information_schema.SCHEMATA;
(運行所討論的用戶)
SELECT count(*) FROM (
SELECT DISTINCT TABLE_SCHEMA FROM information_schema.SCHEMA_PRIVILEGES WHERE GRANTEE LIKE("'USERNAME'%") GROUP BY TABLE_SCHEMA
) AS baseview;
(潤根)
警告:有沒有這樣的事,作爲一個 「所有者」 對在MySQL數據庫中,以上查詢將顯示有關用戶可以訪問的數據庫的信息。
據我所知,數據庫或其對象的「所有者」在MySQL中沒有像MS Access和MS SQL Server中那樣的概念。我從mysql系統表中任何地方缺少「owner」字段來推測這一點。 (http://www.wideman-one.com/gw/tech/mysql/perms/index.htm)
感謝您的回答... – Devrim
您可以計算mysql數據庫和db表中有多少數據庫與用戶關聯。這是我能想到的最接近用戶對數據庫的「所有權」。
SELECT count(DISTINCT Db) FROM db WHERE User = 'someuser';
您運行sql,然後您會看到表的所有者用戶。
的SQL是select * from information_schema. SCHEMA_PRIVILEGES where TABLE_SCHEMA='myUser'
這看起來像最近我們可以得到......哼 – Devrim
這是接近你可以在沒有「所有者的概念得到」。順便說一句:第二個查詢當然寫得太過分了,因爲你可能需要內部查詢以及...... –