首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Symfony 5,迁移到数据库mariadb的理论问题

Symfony 5,迁移到数据库mariadb的理论问题
EN

Stack Overflow用户
提问于 2020-09-23 16:05:33
回答 1查看 4.3K关注 0票数 0

我对symfony 5有意见。

当我执行命令时:php bin/console doctrine:migrations:migrate

我有个错误:

中的MetadataStorageError.php第13行:元数据存储不是最新的,请运行同步元数据存储命令来解决这个问题。

我修改我的env.local以使用MariaDB指定服务器版本:

代码语言:javascript
复制
DATABASE_URL=mysql://db_user:.......@127.0.0.1:3306/bundletest?serverVersion=mariadb-10.5

当我执行时:php bin/console doctrine:migrations:migrate

我还有一个错误:

在DBALException.php第86行中:

指定的平台版本“MariaDB10.5”无效。平台版本必须以下列格式指定:

"^(?:5.5.5-)?(mariadb-)?..".

EN

回答 1

Stack Overflow用户

发布于 2021-01-04 13:22:04

建立教条迁移

配置postgres和mysql的相同方式(当然,需要设置不同的PDO驱动程序,服务器版本)

这里的是经过测试的&直到symfony 5.2和PHP7.4的工作示例

您需要在项目中更新两件事。

安装原则后的project_dir/config/packages/doctrine.yaml配置文件

请设置如下

原则:驱动程序:'pdo_mysql‘server_version:'5.7’字符集: utf8mb4 default_table_options: charset: utf8mb4 collate: utf8mb4_unicode_ci url:'%env(resolve:DATABASE_URL)%‘orm: auto_generate_proxy_classes: true naming_strategy: utf8mb4 auto_mapping: true映射: App: is_bundle: false类型:注释dir:'%kernel.project_dir%/src/Entity‘前缀:' App \Entity’别名:App

在你的.env文件中

#DATABASE_URL="mysql://db_user:db_password@127.0.0.1:3306/db_name“

设置用户和db设置,添加?serverVersion

DATABASE_URL="mysql://db_user:db_password@127.0.0.1:3306/db_name?serverVersion=5.7

代码语言:javascript
复制
php bin/console doctrine:database:create (it is better to create db with your project config settings)

现在您可以自由地使用迁移了。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64031989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档