Skip to content

Incompatibility with MySQL 9.6: md5() function removed, breaking Pulse tables #476

@colq2

Description

@colq2

Pulse Version

  • All

Laravel Version

  • All

PHP Version

  • All

Livewire Version

  • All

Database Driver & Version

MySQL 9.6

Description

MySQL removed the md5() function in version 9.6:
https://dev.mysql.com/doc/refman/9.6/en/encryption-functions.html
vs
https://dev.mysql.com/doc/refman/9.5/en/encryption-functions.html

Laravel Pulse creates tables with virtual columns that use the md5() function. This causes MySQL to fail to start when upgrading to 9.6 if Pulse tables exist.

If you (like me) just blindly upgrade homebrew and restart, mysql wont startup anymore.

Example output of mysql error log:

[Warning] [MY-015638] [Server] Error MY-001305 occurred while checking table-definitions: FUNCTION mysql.md5 does not exist
[Warning] [MY-015638] [Server] Error MY-001033 occurred while checking table-definitions: Incorrect information in file: './ws/pulse_entries.frm'
[ERROR] [MY-013135] [Server] Incorrect information in file: './ws/pulse_entries.frm'

If you want to migrate pulse tables in mysql 9.6 this wont work.

Steps To Reproduce

If tables already exists in the databse:
Upgrade to mysql 9.6

If pulse is not installed yet:
Install pulse and try to migrate.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions