MySQL error 1036: table is read only

One needs super user privs to do this, most commonly sudo is used to acheve this.

in order too Change the owner of the files.

sudo chown -R mysql:mysql /var/lib/mysql

Reboot Mysql for the changes

sudo service mysql restart

who owns sch_portfolio and what group are they in, should be mysql:mysql. you'll also need to restart mysql for changes to take affect

also check that the currently logged in user had GRANT access to update

The MySQL server is running as user mysql and not as the user I logged into it with. In order for it to access files that have user only rights they must be owned by user ‘mysql’ since that is what the server is running as. Make sure the folder and files used by mysql belong to the user ‘mysql’. These files are located in the /var/lib/mysql directory. The directory itself should also belong to ‘mysql’.


Make sure you have not set innodb_force_recovery > 0 in my.cnf