Struggling with install for 2 days now


#1

I have been struggling with installation for 2 days now, finally got the ./pimcore-install to start installing but i get the key length issue.

php version - PHP 7.1.26 (cli) (built: Jan 9 2019 08:02:33) ( NTS )
Centos 7
mariadb - Server: MariaDB
Server version: 10.3.12-MariaDB MariaDB Server

not sure where the mistake is,
any guidance will help.

  • An exception occurred while executing ‘CREATE TABLE assets (
    id int(11) unsigned NOT NULL AUTO_INCREMENT,
    parentId int(11) unsigned DEFAULT NULL,
    type varchar(20) DEFAULT NULL,
    filename varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT ‘’,
    path varchar(765) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL,mimetype varchar(190) DEFAULT NULL,
    creationDate INT(11) UNSIGNED DEFAULT NULL,
    modificationDate INT(11) UNSIGNED DEFAULT NULL,
    userOwner int(11) unsigned DEFAULT NULL,
    userModification int(11) unsigned DEFAULT NULL,
    customSettings text,
    hasMetaData tinyint(1) NOT NULL DEFAULT ‘0’,
    versionCount INT UNSIGNED NOT NULL DEFAULT ‘0’,
    PRIMARY KEY (id),
    UNIQUE KEY fullpath (path,filename),
    KEY parentId (parentId),
    KEY filename (filename),
    KEY path (path),
    KEY modificationDate (modificationDate)
    ) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC ENGINE=MyISAM;’:

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


#2

Just guessing now, but maybe you do not fulfill the requirements for database?

https://pimcore.com/docs/5.x/Development_Documentation/Installation_and_Upgrade/System_Requirements.html

Specifically:

innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_file_per_table = 1


#3

for some reason i cannot setup the global variables for file format and others. .

MariaDB [(none)]> set global innodb_large_prefix = ON;
ERROR 1193 (HY000): Unknown system variable ‘innodb_large_prefix’
MariaDB [(none)]> set global innodb_file_format = Barracuda;
ERROR 1193 (HY000): Unknown system variable ‘innodb_file_format’
MariaDB [(none)]> set global innodb_file_per_table = ON;
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> set GLOBAL innodb_optimize_fulltext_only=ON;
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE ‘innodb_file%’;
±----------------------±------+
| Variable_name | Value |
±----------------------±------+
| innodb_file_per_table | ON |
±----------------------±------+
1 row in set (0.002 sec)

MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE ‘innodb_large%’;
Empty set (0.001 sec)

MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE ‘default_storage_engin%’;
±-----------------------±-------+
| Variable_name | Value |
±-----------------------±-------+
| default_storage_engine | InnoDB |
±-----------------------±-------+
1 row in set (0.002 sec)

MariaDB [(none)]>


#4

Also, possibly check if you use default_storage_engine=InnoDB, innodb_default_row_format=dynamic and charset=utf8mb4.


#5

For the above -
those values should be set by default in Maria DB 10.3

* **innodb_file_format**  Default Value: Barracuda (>= MariaDB 10.2.2) Antelope (<= MariaDB 10.2.1) Deprecated: MariaDB 10.2, Removed: MariaDB 10.3.1

This means this must be removed and is on by default.

* **innodb_file_per_table**  Default Value: ON (>= MariaDB 5.5), OFF (<= MariaDB 5.3)

This means it should be removed because it is on by default.

* **innodb_large_prefix**  Default Value: ON (>= MariaDB 10.2.2) OFF (<= MariaDB 10.2.1) Deprecated: MariaDB 10.2 Removed: MariaDB 10.3.1

#6

all those are there.


#7

MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE ‘storage%’;
±---------------±-------+
| Variable_name | Value |
±---------------±-------+
| storage_engine | InnoDB |
±---------------±-------+
1 row in set (0.003 sec)


#8

I’m wondering where MyISAM is coming from in your query:

That’s not there in the original DDL:

What is the result of the following query: show engines;


#9

this is the info for show engines

MariaDB [(none)]> show engines;
±-------------------±--------±---------------------------------------------------------------------------------±-------------±-----±-----------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
±-------------------±--------±---------------------------------------------------------------------------------±-------------±-----±-----------+
| CSV | YES | Stores tables as CSV files | NO | NO | NO |
| MRG_MyISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| Aria | YES | Crash-safe tables with MyISAM heritage | NO | NO | NO |
| MyISAM | YES | Non-transactional engine with good performance and small data footprint | NO | NO | NO |
| PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
| InnoDB | DEFAULT | Supports transactions, row-level locking, foreign keys and encryption for tables | YES | YES | YES |
| SEQUENCE | YES | Generated tables filled with sequential values | YES | NO | YES |
±-------------------±--------±---------------------------------------------------------------------------------±-------------±-----±-----------+
8 rows in set (0.000 sec)

not sure where that myisam came from


#10

ok i removed the myisam and it worked. odd, very odd.