In version 3.1.1, the generated mysql script was fine on the 8.0+ mysql version, but failed on the 32-bit version of MySQL5.7.30
E:\install script\SensorBroker.Migrator>SensorBroker.Migrator.exe
2020-06-17 13:30:37 | Host database: server=127.0.0.1;port=3306;database=******;uid=*****;password=*****;pooling=True;connect timeout=10;default command timeout=60;sslmode=none;charset=utf8;allowpublickeyretrieval=True
2020-06-17 13:30:37 | Continue to migration for this host database and all tenants..? (Y/N): y
2020-06-17 13:30:40 | HOST database migration started...
2020-06-17 13:30:43 | An error occured during migration of host database:
2020-06-17 13:30:43 | MySql.Data.MySqlClient.MySqlException (0x80004005): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COLUMN `VMCSerialPortId` TO `SerialPortId`' at line 1
---> MySql.Data.MySqlClient.MySqlException (0x80004005): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COLUMN `VMCSerialPortId` TO SerialPortId`' at line 1
at MySqlConnector.Core.ResultSet.ReadResultSetHeaderAsync(IOBehavior ioBehavior) in C:\projects\mysqlconnector\src\MySqlConnector\Core\ResultSet.cs:line 49
at MySql.Data.MySqlClient.MySqlDataReader.ActivateResultSet() in C:\projects\mysqlconnector\src\MySqlConnector\MySql.Data.MySqlClient\MySqlDataReader.cs:line 125
at MySql.Data.MySqlClient.MySqlDataReader.CreateAsync(CommandListPosition commandListPosition, ICommandPayloadCreator payloadCreator, IDictionary`2 cachedProcedures, IMySqlCommand command, CommandBehavior behavior, IOBehavior ioBehavior, CancellationToken cancellationToken) in C:\projects\mysqlconnector\src\MySqlConnector\MySql.Data.MySqlClient\MySqlDataReader.cs:line 390
at MySqlConnector.Core.CommandExecutor.ExecuteReaderAsync(IReadOnlyList`1 commands, ICommandPayloadCreator payloadCreator, CommandBehavior behavior, IOBehavior ioBehavior, CancellationToken cancellationToken) in C:\projects\mysqlconnector\src\MySqlConnector\Core\CommandExecutor.cs:line 62
at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQueryAsync(IOBehavior ioBehavior, CancellationToken cancellationToken) in C:\projects\mysqlconnector\src\MySqlConnector\MySql.Data.MySqlClient\MySqlCommand.cs:line 226
at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery() in C:\projects\mysqlconnector\src\MySqlConnector\MySql.Data.MySqlClient\MySqlCommand.cs:line 74
at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteNonQuery(RelationalCommandParameterObject parameterObject)
at Microsoft.EntityFrameworkCore.Migrations.MigrationCommand.ExecuteNonQuery(IRelationalConnection connection, IReadOnlyDictionary`2 parameterValues)
at Microsoft.EntityFrameworkCore.Migrations.Internal.MigrationCommandExecutor.ExecuteNonQuery(IEnumerable`1 migrationCommands, IRelationalConnection connection)
at Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.Migrate(StringtargetMigration)
at Pomelo.EntityFrameworkCore.MySql.Migrations.Internal.MySqlMigrator.Migrate(String targetMigration)
at Microsoft.EntityFrameworkCore.RelationalDatabaseFacadeExtensions.Migrate(DatabaseFacade databaseFacade)
at Abp.Zero.EntityFrameworkCore.AbpZeroDbMigrator`1.CreateOrMigrate(AbpTenantBase tenant, Action`1 seedAction)
at Abp.Zero.EntityFrameworkCore.AbpZeroDbMigrator`1.CreateOrMigrateForHost(Action`1 seedAction)
at SensorBroker.Migrator.MultiTenantMigrateExecuter.Run(Boolean skipConnVerification)
2020-06-17 13:30:43 | Canceled migrations.
MySQL version: 5.7.30
Operating system: win7 x86
Pomelo.EntityFrameworkCore.MySql version:3.1.1
Microsoft.AspNetCore.App version:.netCore3.1
Other details about my project setup:
An error was reported on the Windows 7 x86 machine when the initialization database script was executed
This is running on a Win10 x64 machine without any exceptions, and the mysql database version is 8.0.16.
This is running on a Win10 x64 machine without any exceptions, and the mysql database version is 8.0.16.
2020-06-17 13:22:36 | Host database: server=127.0.0.1;port=3306;database=******;uid=*****;password=*****;pooling=True;connect timeout=10;default command timeout=60;sslmode=none;charset=utf8;allowpublickeyretrieval=True
2020-06-17 13:22:36 | Continue to migration for this host database and all tenants..? (Y/N): y
2020-06-17 13:22:40 | HOST database migration started...
2020-06-17 13:25:41 | HOST database migration completed.
2020-06-17 13:25:41 | --------------------------------------------------------
2020-06-17 13:25:41 | All databases have been migrated.
Press ENTER to exit...
Early. I am using netCore2.2, corresponding is Pomelo EntityFrameworkCore. MySql version 2.2.6, test is no problem, now. NetCore2.2 upgrading to. NetCore3.1, Pomelo. EntityFrameworkCore. 2.2.6 MySql version upgrade to 3.1.1, is wrong.
Make sure that you set the ServerVersion() accordingly. Take a look at our sample.
Pomelo 3.x uses newer features of newer MySQL/MariaDB versions. And if you don't specify the server version explicitly, the newest one (and MySQL) will be assumed.
Make sure that you set the
ServerVersion()accordingly. Take a look at our sample.Pomelo 3.x uses newer features of newer MySQL/MariaDB versions. And if you don't specify the server version explicitly, the newest one (and MySQL) will be assumed.
Thank you very much for your help so that the problem can be solved quickly.
Most helpful comment
Make sure that you set the
ServerVersion()accordingly. Take a look at our sample.Pomelo 3.x uses newer features of newer MySQL/MariaDB versions. And if you don't specify the server version explicitly, the newest one (and MySQL) will be assumed.