简体   繁体   中英

How do you access the MySql data dictionary?

I am having trouble running this query.

SELECT * FROM mysql.routines; 

The error code 3554 says

Access to data dictionary table 'mysql.routines' is rejected.

I'm trying to look at all of my stored procedures. I've granted all privileges to the root user and it is still not working. Any ideas?

You seem to be looking for the INFORMATION_SCHEMA ROUTINES Table :

SELECT * FROM INFORMATION_SCHEMA.ROUTINES

From the documentation:

The ROUTINES table provides information about stored routines (stored procedures and stored functions). The ROUTINES table does not include built-in SQL functions or user-defined functions (UDFs).

In normal cases, it is recommended to use INFORMATION_SCHEMA instead of mysql schema : the former is the official interface to the system tables.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM