Hi there, I am hoping that someone out there knows more than me about the InnoDB database upgrade procedure for MySQL and can help me. I don't know that much to be honest.
I am running Ubuntu Server 20.04 with Mysql Server 8.0.
The apt package manager recently upgraded my mysql-server-8.0 and mysql-server-core-8.0 packages to the latest 8.0.22 version from 8.0.21.
As soon as mysql server tries to start it wants to upgrade the database schemas from version 80021 to 80022. It then tells me that
[InnoDB] Cannot open datafile for read-only: './sys/sys_config.ibd' OS error: 71
The upgrade then tells me
failed with error code = 1812, error message = 'Tablespace is missing for table `sys`.`sys_config`.'
and then fails.
I have read that the sys schema is not needed to run mysql server so it could be dropped and recreated. That would be great if I could get mysql server to run in the first place in order to drop the sys schema, but it wont let me run mysql server until the upgrade is complete, and the upgrade won't complete while the sys folder (/var/lib/mysql/sys) is missing. I have checked it is in fact not there and the file permissions are correct.
I have tried running mysqld --upgrade=MINIMAL but it still fails saying that the --upgrade=MINIMAL switch stops a required upgrade from running. If mysql_upgrade command was not deprecated I could have run that with the --skip-sys-schema switch.
Thanks in advance for any help with this.
I am running Ubuntu Server 20.04 with Mysql Server 8.0.
The apt package manager recently upgraded my mysql-server-8.0 and mysql-server-core-8.0 packages to the latest 8.0.22 version from 8.0.21.
As soon as mysql server tries to start it wants to upgrade the database schemas from version 80021 to 80022. It then tells me that
[InnoDB] Cannot open datafile for read-only: './sys/sys_config.ibd' OS error: 71
The upgrade then tells me
failed with error code = 1812, error message = 'Tablespace is missing for table `sys`.`sys_config`.'
and then fails.
I have read that the sys schema is not needed to run mysql server so it could be dropped and recreated. That would be great if I could get mysql server to run in the first place in order to drop the sys schema, but it wont let me run mysql server until the upgrade is complete, and the upgrade won't complete while the sys folder (/var/lib/mysql/sys) is missing. I have checked it is in fact not there and the file permissions are correct.
I have tried running mysqld --upgrade=MINIMAL but it still fails saying that the --upgrade=MINIMAL switch stops a required upgrade from running. If mysql_upgrade command was not deprecated I could have run that with the --skip-sys-schema switch.
Thanks in advance for any help with this.