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:
- MySQL partition is full MySQL databases are located on /var/lib/mysql, if you create a...
- Magento error with pdo_mysql Magento is a great Free / Open source eCommerce script,...
Related posts brought to you by Yet Another Related Posts Plugin.