Datenbank MYSQL Fehler: max key length is 1000 bytes  [GELÖST]

User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

Hallo zusammen,

auf einem Free Webspace oder gekauften Webspace kann ich ein bestimmtes Script ganz einfach installieren.
Auf dem eigenen Server nun aber nicht, folgendes erhalte ich:
Specified key was too long; max key length is 1000 bytes
#DROP TABLE IF EXISTS 4images_settings;
CREATE TABLE 4images_settings (
setting_name varchar(255) NOT NULL default '',
setting_value mediumtext NOT NULL,
PRIMARY KEY (setting_name)
) ENGINE=MyISAM;
Wie muss und kann ich das Mysql bzw. phpmyadmin so konfigurieren, dass ich damit keine Probleme mehr habe?

Vielen Dank im Voraus.

LG
User avatar
Jolinar
Community Moderator
Posts: 3560
Joined: Sat 30. Jan 2016, 07:11
Location: Weimar (Thüringen)
Contact:

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Jolinar »

Von MyISAM auf InnoDB wechseln. InnoDB unterstützt Fulltext Indizierung.
Wenn jemand inkompetent ist, dann kann er nicht wissen, daß er inkompetent ist. (David Dunning)

Data Collector für Community Support
___
Ich verwende zwei verschiedene Schriftfarben in meinen Beiträgen /
I use two different font colors in my posts:
  • In dieser Farbe schreibe ich als Moderator und gebe moderative Hinweise oder begründe moderative Eingriffe /
    In this color, I write as a moderator and provide moderative guidance or justify moderative interventions
  • In dieser Farbe schreibe ich als Community Mitglied und teile meine private Meinung und persönlichen Ansichten mit /
    In this color, I write as a community member and share my personal opinions and views
User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

Ich bin absoluter Neuling was das betrifft.
Wie wechsel ich das?

So sieht das aus: https://easycaptures.com/fs/uploaded/12 ... 268570.png

Unten steht was von InnoDB beim "Typ".

Die Datenbank ist mit dem Keyhelp ACP erstellt worden.

Und die Scripte anzupassen, ist wohl auch nicht der richtige Weg oder?
User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

Wenn ich das im Script ändere, also diese Engine, dann erhalte ich das:
#1071 - Schlüssel ist zu lang. Die maximale Schlüssellänge beträgt 767
User avatar
OlliTheDarkness
Posts: 1854
Joined: Tue 14. Aug 2018, 16:41
Location: Essen (NRW)

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by OlliTheDarkness »

Jolinar wrote: Tue 18. Feb 2020, 17:28 von MyISAM auf InnoDB wechseln. InnoDB unterstützt Fulltext Indizierung.
Kommt auf die Serverversion an.
Isam 1000 und InnoDB 767 (Bugversion) wurde aber in einer der letzten gefixxt, womit deine Aussage wieder zutreffend ist.
Mit freundlichen Grüßen
OlliTheDarkness

**************************************************************
Helden leben lange, Legenden sterben nie

:!: World Hack Organization :!:
**************************************************************
User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

Ich komme nicht weiter.
Ich verstehe nicht wie ich das umstellen soll.
User avatar
Florian
Keyweb AG
Posts: 1243
Joined: Wed 20. Jan 2016, 02:28

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Florian »

Hallo,

diese Einstellungen testen:

innodb-file-format=barracuda
innodb-file-per-table=ON
innodb-large-prefix=ON
innodb_default_row_format = 'DYNAMIC'


Alternativ auf MariaDB 10.3 updaten dort sollen die Limits geändert worden sein.

Natürlich alles ohne Garantie und wie immer bei allen Änderungen vorher ein Backup machen.
Mit freundlichen Grüßen / Best regards
Florian Cheno

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

Ich habe nun die Version MariaDB 10.3.22 installiert.
Nach wie vor der gleiche Fehler bei der Installation:
Specified key was too long; max key length is 1000 bytes
Kannst du mir sagen, wie ich die Befehle ausführen muss?
User avatar
Florian
Keyweb AG
Posts: 1243
Joined: Wed 20. Jan 2016, 02:28

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Florian »

Hallo,

das sind Anweisungen für die Konfigurationsdateien. Also wäre der Platz dafür /etc/mysql/mariadb.conf.d/90-tuning.cnf oder bei Nichtvorhandensein /etc/mysql/mariadb.conf.d/50-server.cnf
Mit freundlichen Grüßen / Best regards
Florian Cheno

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

/etc/mysql/mariadb.conf.d/90-tuning.cnf
# KeyHelp Tuning Settings
# System-Memory < 2 GB
#

[mysqld]

# mySQL Tuning
max_connections = 100
key_buffer_size = 64M
max_allowed_packet = 16M
thread_stack = 256K
tmp_table_size = 128M
max_heap_table_size = 128M
thread_cache_size = 150
table_cache = 8192
table_definition_cache = 4096
open_files_limit = 16544
/etc/mysql/mariadb.conf.d/50-server.cnf
# These groups are read by MariaDB server.
# Use it for options that only the server (but not clients) should see
#
# See the examples of server my.cnf files in /usr/share/mysql/
#

# this is read by the standalone daemon and embedded servers
[server]

# this is only for the mysqld standalone daemon
[mysqld]

#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
ImageView Screen Capture
User avatar
Florian
Keyweb AG
Posts: 1243
Joined: Wed 20. Jan 2016, 02:28

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Florian »

na dann in die /etc/mysql/mariadb.conf.d/90-tuning.cnf einfügen unterhalb von [mysqld] und den Dienst neu starten.
Mit freundlichen Grüßen / Best regards
Florian Cheno

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

Komisch, der Fehler besteht weiterhin.
Ich habe das Script auf verschiedenen Free Webspace, dem eigenen Webspace erfolgreich installieren können.

Nur auf dem Server nicht.

Die Datei sieht nun so aus:
#
# KeyHelp Tuning Settings
# System-Memory < 2 GB
#

[mysqld]

# mySQL Tuning
max_connections = 100
key_buffer_size = 64M
max_allowed_packet = 16M
thread_stack = 256K
tmp_table_size = 128M
max_heap_table_size = 128M
thread_cache_size = 150
table_cache = 8192
table_definition_cache = 4096
open_files_limit = 16544

# InnoDB Configuration
innodb_file_per_table = 1
innodb_buffer_pool_size = 128M
innodb-file-format = barracuda
innodb-file-per-table = ON
innodb-large-prefix = ON
innodb_default_row_format = 'DYNAMIC'

# Query Cache Configuration
query_cache_limit = 64M
query_cache_size = 128M
query_cache_type = 1
Den Dienst habe ich danach ebenfalls neugestartet, die Datei überprüft, daten stehen alle drin.

Der Fehler bleibt:
DB Error: Bad SQL Query: CREATE TABLE 4images_settings (setting_name varchar(255) NOT NULL default '',setting_value mediumtext NOT NULL,PRIMARY KEY (setting_name)) ENGINE=MyISAM
Specified key was too long; max key length is 1000 bytes
Ist das kompliziert.
User avatar
ShortSnow
Posts: 251
Joined: Thu 15. Nov 2018, 00:45

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by ShortSnow »

Hi,

Optimier die Tabelle jetzt einmal. Dann sollten die Felder automatisch auf Dynamic umgestellt werden. Evtl hilft das.

Gruß Arne
User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

Wenn du mir kurz erleutern könntest, wie man das macht?

LG
User avatar
Sumale.my
Posts: 66
Joined: Wed 8. Jan 2020, 17:38

Re: Datenbank MYSQL Fehler: max key length is 1000 bytes

Post by Sumale.my »

Es betrifft auch nur diese Erstellung:
#DROP TABLE IF EXISTS 4images_settings;
CREATE TABLE 4images_settings (
setting_name varchar(255) NOT NULL default '',
setting_value mediumtext NOT NULL,
PRIMARY KEY (setting_name)
) ENGINE=MyISAM;
Wie gesagt, bei allen systemen klappt es nur auf dem Server nicht... :/
Locked