i have taken a mysql server backup using mysqldump and imported the backup file in another mysql server.Import failed because of disk full issue. Only 11 databases are created out of 15 . when i issue show procedure status command, i can see the procedures related to the missing databases( 4 databases) also along with the created databases in the server.when i debug this , i felt like when i have backedup mysql database and import it, these procedures would have come through mysql.proc table and show procedure status is referring to mysql.proc table not the existing databases and their procedures in the server. My question is please let me know whether my understanding is correct or not regarding the above.

1 Answer 1


Yes. There is not much else to say about your question. If you have recovered the mysql.proc table, but not the databases, you may see the procedures but not the databases.

This is because you can export and import them logically "--routines", which will create CREATE PROCEDURE statements, or physically, recovering the mysql.proc table. In any case, they are not real physical objects of each schema subdirectory (unlike tables, partitions and triggers).

If they annoy you, you can safely delete them from the table, as they are just rows.

  • so same applies to user defined functions also? i mean, show function status referring to mysql.proc table where type='FUNCTION' even though the database corresponds to the particular function doesn't exist or not created somehow.
    – kasi
    Commented Mar 19, 2015 at 13:03
  • If with user defined functions you mean what is created with CREATE FUNCTION and not MySQL's UDFs programmed in C, then yes.
    – jynus
    Commented Mar 19, 2015 at 15:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.