Ich habe große Tabelle mit mehr als 1 mio. Daten. Inserts dauern bei InnoDB 100-150 mal langsamer als MyISAM. Wie kann ich die Leistung von InnoDB verbessern.
Pfadnavigation
Wie kann man InnoDB verbessern? (Geschwindigkeit von InnoDB auf Mysql / MariaDB Server)
Suche
Neueste Kommentare
- 2 weeks agoMariaDB Server Performance Optimieren
/usr/sbin/mariadbd --help --verbose | grep "query.*size"
- 2 weeks agoMariaDB Server Performance Optimieren
Commandline:
systemctl restart mariadb
- 2 weeks agoMariaDB Server Performance Optimieren
After my changes in /etc/mysql/db-performance.cnf
- 2 weeks agoInstall APCu (PHP 8.1, Plesk)
Error:
- 2 weeks agoInstall APCu (PHP 8.1, Plesk)
PHP 8.3 extra packages (+ pecl, apcu)
apt update apt install plesk-php83-dev zlib1g-dev
- 2 weeks 1 day agoApache Solr install & activate on Debian 12 (Secure Admin with Basic Auth on Port 8983)
I get this error, when I visit https://solr.example.com:8983 :
- 2 weeks 6 days agoDie Argumentliste ist zu lang (/usr/bin/rm)
Remove all files starting with 2024 in mydir123 and show the number of deleted files:
find mydir123 -name '2024*' -exec rm -vf {} \; | wc -l
- 2 weeks 6 days agoDie Argumentliste ist zu lang (/usr/bin/rm)
find . -name '*' | xargs rm -v
- 1 month agoDeprecated function: Creation of dynamic property Drupal Tablefield TablefieldFormatter::$ModuleHandler is deprecated
- 2 months agoTransaction isolation level REPEATABLE-READ The recommended level for Drupal is "READ COMMITTED". (Drupal Status Report)
Edit "/etc/my.cnf" ( under [mysqld] ):
transaction_isolation="READ-COMMITTED"
Restart MariaDB / MySQL:
Comments
Diese Konfigurationsänderung… Di, 05/23/2017 - 10:40
Diese Konfigurationsänderung / Erweiterung hat mir geholfen. Aber ich weiss nicht welche Punkt hat es geschafft.
innodb_read_io_threads = 64
innodb_write_io_threads = 16
innodb_log_buffer_size = 256M
query_cache_size = 0
innodb_buffer_pool_dump_at_shutdown=1
innodb_buffer_pool_load_at_startup=1
innodb_purge_threads = 4
innodb_buffer_pool_instances = 64
innodb_thread_concurrency = 16
innodb_flush_method = O_DIRECT
innodb_file_per_table = 1
… Sa, 05/27/2017 - 09:55
InnoDB lässt damit keine große Verbesserung merken.
innodb_read_io_threads = 64
innodb_write_io_threads = 16
innodb_log_buffer_size = 256M
query_cache_size = 0
innodb_buffer_pool_dump_at_shutdown=1
innodb_buffer_pool_load_at_startup=1
innodb_purge_threads = 4
innodb_buffer_pool_instances = 64
innodb_thread_concurrency = 16
innodb_flush_method = O_DIRECT
innodb_file_per_table = 1
Diese funktioniert aber keine Änderung bzw. keine Leistungsverbesserung:
innodb_read_io_threads = 64
innodb_write_io_threads = 16
innodb_log_buffer_size = 256M
query_cache_size = 64M
innodb_purge_threads = 4
innodb_buffer_pool_instances = 64
innodb_thread_concurrency = 16
innodb_flush_method = fsync
innodb_file_per_table = 1
Und man darf nicht einfach so in my.cnf ganz unten oder oben hinzufügen. Es muss unter [mysqld] platziert werden.
Einfache Test wurde gemacht mit: "select * from articles order by rand() limit 10"
InnoDB: 0.48 Sekunden
MyISAM: 0.06 Sekunden
Beide Tabellen haben identische Daten mit mehr als 1 mio. Einträge.
Bei mir haben die Änderungen… Do, 06/01/2017 - 13:07
Bei mir haben die Änderungen leider nichts gebracht. Habe folgendes getestet und der Server ist etwas schneller geworden:
innodb_buffer_pool_size = 1G
innodb_flush_log_at_trx_commit = 2
Neuen Kommentar schreiben