SQL Error: Table ‘mysql.proc’ doesn’t exist
Today I upgraded my HeidiSQL into version 4, but when I am running it on the MySQL server 5.0 I got error
"SQL Error: Table 'mysql.proc' doesn't exist"
After googling around, found that this error caused HeidiSQL requires table Mysql.proc which is not exist. Table Mysql.proc is used to store procedure. But wait, I am using MySQL 5.0.x which already support Procedures and Views!! so How come this error show up??
After some tought, the are several reason why this error came up although you are using MySQL 5.
- You are upgrading from MySQL 4.x
- Your MySQL 5.x installation didn’t smooth
And in my case, it was reason no. 1, as I am remember I was once upgrade mysql server a year ago. So how to fix it?
Based on MySQL Forum, all I need to do is run command
scripts/mysql_fix_privilege_tables.sql
Wait, it is error, since I am using RPM version not TAR.GZ, so here I fix it.
# rpm -qa | grep mysql mysql-bench-5.0.68-1.el4_6 mysql-libs-5.0.68-1.el4_6 mysql-5.0.68-1.el4_6 mysql-server-5.0.68-1.el4_6 mysqlclient10-3.23.58-4.RHEL4.1 php-mysql-5.1.6-3.el4s1.10 libdbi-dbd-mysql-0.6.5-10.RHEL4.1 mysql-devel-5.0.68-1.el4_6 mod_auth_mysql-3.0.0-2.el4s1.3 # rpm -qli mysql-server-5.0.68-1.el4_6 | more /etc/rc.d/init.d/mysqld /usr/bin/innochecksum /usr/bin/myisam_ftdump /usr/bin/myisamchk /usr/bin/myisamlog /usr/bin/myisampack /usr/bin/mysql_convert_table_format /usr/bin/mysql_explain_log /usr/bin/mysql_fix_extensions /usr/bin/mysql_fix_privilege_tables /usr/bin/mysql_install_db # /usr/bin/mysql_fix_privilege_tables This script updates all the mysql privilege tables to be usable by the current version of MySQL Got a failure from command: cat /usr/share/mysql/mysql_fix_privilege_tables.sql | /usr/bin/mysql --no-defaults --force --user=root --host=localhost --database=mysql Please check the above output and try again. Running the script with the --verbose option may give you some information of what went wrong. If you get an 'Access denied' error, you should run this script again and give the MySQL root user password as an argument with the --password= option # /usr/bin/mysql_fix_privilege_tables --password=mydbserv This script updates all the mysql privilege tables to be usable by the current version of MySQL done
Like it said: Done. Now I can access to MySQL 5.0 using latest HeidiSQL

Related posts:
- Running MySQL 4 and MySQL 5 Concurrently From Howtoforge.com’s article: Running MySQL 4 And MySQL 5 Concurrently...
- MySQL 5 access via old MySQL-Front 2.5 Kusma!!!, Now I know how to make old mysql front...
- Skip Replication Error This is happen long time ago when Mysql Replication stop...
- Running MySQLd as standalone application on Windows My friend asked me how to get MySQL running as...