首页 文章

Symfony 3.4.4 MariaDB 10.0.1 - SQLSTATE [42000]:语法错误或访问冲突:1071指定密钥太长;最大密钥长度为767字节

提问于
浏览
0

我有一个新的VPS服务器(Debian),安装了基本的东西

我已经在本地环境中安装了一个symfony项目,它运行良好 .

执行数据库创建命令时: bin/console doctrine:schema:update --force “我收到以下错误:

In AbstractMySQLDriver.php line 115:

An exception occurred while executing 'CREATE TABLE salepoint (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, slug VARCHAR(256) NOT NULL, UNIQUE INDEX UNIQ_56CEF7DA989D9B62 (slug), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB':  

SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes                                                                                                                                                                          


In PDOConnection.php line 106:

SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes  


In PDOConnection.php line 104:

SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

正如您在此链接https://jira.mariadb.org/browse/MDEV-14904中看到的,它似乎是MariaDB 10.0的错误

我尝试使用此文档将其更新到10.1版:https://websiteforstudents.com/install-upgrade-to-mariadb-10-1-10-2-10-3-latest-on-ubuntu-16-04-lts-server/

执行:

sudo apt-get install software-properties-common

收到此消息:

阅读包列表...完成构建依赖关系树读取状态信息...完成软件 - 属性 - 通用已经是最新版本 . 您可能希望运行'apt-get -f install'来纠正这些:以下包具有未满足的依赖关系:mariadb-server:取决于:mariadb-server-10.1(= 10.1.32 maria-1~jessie)但它不是将要安装mariadb-server-10.0:取决于:mariadb-client-10.0(> = 10.0.32-0 deb8u1)但它不会被安装取决于:mariadb-server-core-10.0(> = 10.0.32 -0 deb8u1)但它不会被安装E:未满足的依赖项 . 尝试'apt-get -f install'没有包(或指定解决方案) .

执行下一步:

apt-get install mariadb-server mariadb-client

收到此消息:

阅读包列表...完成构建依赖关系树读取状态信息...完成mariadb-server已经是最新版本 . 您可能希望运行'apt-get -f install'来纠正这些:以下包具有未满足的依赖关系:mariadb-client:取决于:mariadb-client-10.1(= 10.1.32 maria-1~jessie)但它不是将要安装mariadb-server:取决于:mariadb-server-10.1(= 10.1.32 maria-1~jessie)但它不会安装mariadb-server-10.0:取决于:mariadb-client-10.0(> = 10.0.32-0 deb8u1)但它不会被安装取决于:mariadb-server-core-10.0(> = 10.0.32-0 deb8u1)但它不会被安装E:未满足的依赖项 . 尝试'apt-get -f install'没有包(或指定解决方案) .

有解决方案吗

1 回答

  • 1

    有5种解决方案可供选择here;选择你喜欢的那个 .

相关问题