0

I'm having trouble getting performance_schema to work in a few of my Aurora instances. Brand new instances where I enable performance_schema work just fine, but several instances that I've had for some time seem to be completely broken and I don't know why. The error logs indicate that the problem is that many columns within performance_schema are of the wrong type.

Excerpt of logs for detail:

2017-11-06 18:28:28 28436 [ERROR] Incorrect definition of table performance_schema.events_waits_current: expected column 'NESTING_EVENT_TYPE' at position 15 to have type enum('STATEMENT','STAGE','WAIT', found type varchar(9).
2017-11-06 18:28:28 28436 [ERROR] Incorrect definition of table performance_schema.events_waits_history: expected column 'NESTING_EVENT_TYPE' at position 15 to have type enum('STATEMENT','STAGE','WAIT', found type varchar(9).
2017-11-06 18:28:28 28436 [ERROR] Incorrect definition of table performance_schema.events_waits_history_long: expected column 'NESTING_EVENT_TYPE' at position 15 to have type enum('STATEMENT','STAGE','WAIT', found type varchar(9).

Not all columns are affected in this way but most appear to be. Is there any reason why this might have occurred? Is there a way to fix this? I assume Amazon support should be able to correct it on the back end but they have been less than helpful thus far.

  • Did you recently upgrade? Without running mysql_upgrade? – Rick James Nov 6 '17 at 19:36
  • @RickJames No, these are Amazon Aurora RDS instances. Amazon currently only supports a single MySQL version on the Aurora platform (5.6.10a IIRC) but oddly enough other DB instances which I create from scratch don't have this issue. – LegendaryDude Nov 6 '17 at 20:36
1

This appears to be the result of the MySQL engine upgrade to version 5.7.3 or later, where the definition of some tables in the performance schema have changed.

If you were running standard MySQL, mysql_upgrade would have fixed that. You'll need to contact Amazon support for ways to upgrade your existing databases to the new engine version.

In the worst case you'd need to create new copies of each affected database and move the data.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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