Optimale Config fuer ein 1 Gig System

Optimale Config fuer ein 1 Gig System

am 09.06.2007 15:43:01 von Richard

Hallo

Hat jemand eine "optimale" config, fuer ein system mit 1 Gigabyte Ram, wenig
Mysql connections (max 50-100)

Danke
mfg
richard

Zur Zeit wird folgende config verwendet
# The MySQL server
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
user = mysql
skip-locking
#datadir = /home/var/mysql
datadir = /mysql
max_connections = 102
key_buffer=32
record_buffer=2M
tmp_table_size=2M
sort_buffer=2M
myisam_sort_buffer_size=64M
table_cache=300
thread_cache=8

key_buffer = 16M
max_allowed_packet = 62M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
# Master Slave
innodb_data_home_dir = /mysql
innodb_data_file_path =
ibdata1:1024M;ibdata2:1024M;ibdata3:1024M;ibdata4:1024M;ibda ta5:1024M;ibdata6:1024M;ibdata7:1024M;ibdata8:10M:autoextend :max:1024M
innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M

# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
#innodb_force_recovery = 4

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

Re: Optimale Config fuer ein 1 Gig System

am 10.06.2007 03:11:51 von Andreas Scherbaum

richard wrote:

Wer bist du überhaupt? Und das diese Emailadresse richtig ist, bezweifle
ich auch.


> Hat jemand eine "optimale" config, fuer ein system mit 1 Gigabyte Ram, wenig
> Mysql connections (max 50-100)

Was, 50-100 Connections parallel, nacheinander, maximal?
Was läuft noch auf der Maschine, welche Anwendung(en) nutzen diese
Datenbank? Welche, wieviele und wie große Tabellen verwendest du?

Man sieht, es gibt keine optimale Config.


Bye

--
Andreas 'ads' Scherbaum
Failure is not an option. It comes bundled with your Microsoft product.
(Ferenc Mantfeld)

Re: Optimale Config fuer ein 1 Gig System

am 10.06.2007 22:02:06 von Axel Schwenke

"richard" wrote:
>
> Hat jemand eine "optimale" config, fuer ein system mit 1 Gigabyte Ram, wenig
> Mysql connections (max 50-100)

Zuwenig Informationen. Nur MyISAM- oder auch InnoDB-Tabellen? Wieviele
Daten insgesamt? Welches Nutzungs-Muster (mind. Lese/Schreib-Verhältnis).
Läuft noch eine andere Applikation als MySQL?

Im Endeffekt braucht ernstgemeintes Tuning immer auch Monitoring. Ehe
du also nicht weißt, *was* zu lange braucht (und ob überhaupt), kannst
du auch nicht vernünftig tunen.

> Zur Zeit wird folgende config verwendet
> # The MySQL server
> [mysqld]
> port = 3306
> socket = /var/lib/mysql/mysql.sock
> user = mysql
> skip-locking
> #datadir = /home/var/mysql
> datadir = /mysql
> max_connections = 102
> key_buffer=32
> record_buffer=2M
> tmp_table_size=2M
> sort_buffer=2M
> myisam_sort_buffer_size=64M
> table_cache=300
> thread_cache=8
>
> key_buffer = 16M
> max_allowed_packet = 62M
> table_cache = 64
> sort_buffer_size = 512K
> net_buffer_length = 8K
> read_buffer_size = 256K
> read_rnd_buffer_size = 512K
> myisam_sort_buffer_size = 8M
> # Master Slave
> innodb_data_home_dir = /mysql
> innodb_data_file_path =
> ibdata1:1024M;ibdata2:1024M;ibdata3:1024M;ibdata4:1024M;ibda ta5:1024M;ibdata6:1024M;ibdata7:1024M;ibdata8:10M:autoextend :max:1024M
> innodb_buffer_pool_size = 16M
> innodb_additional_mem_pool_size = 2M
>
> # Set .._log_file_size to 25 % of buffer pool size
> innodb_log_file_size = 5M
> innodb_log_buffer_size = 8M
> innodb_flush_log_at_trx_commit = 1
> innodb_lock_wait_timeout = 50
> #innodb_force_recovery = 4

Ich kann nicht erkennen, daß du dir selber schon mal Mühe gegeben
hättest, sinnvolle Werte anhand der Erklärungen im (hier sehr
ausführlichen) Manual zu finden. Du hast ja noch nicht mal eine
der Beispiel-my.cnfs als Basis hergenommen.

Zuerst mal solltest du alle Duplikate da raus werfen.
Dann noch ein paar Hinweise:

max_allowed_packet=62M ist weder Fisch noch Fleisch.
Hast du nun große BLOBs in deinen Daten oder nicht?

table_cache=64 ist wahrscheinlich deutlich zu klein
(wenn es nennenswert MyISAM-Tabellen gibt).

myisam_sort_buffer_size=8M ist definitiv zu klein.
key_buffer=16M ist definitiv zu klein.
- es sei denn, das wird InnoDB-only - aber dann wäre
innodb_buffer_pool_size=16M viel zu klein.

Warum du 7x 1GB InnoDB-Tablespace allozierst und dann einen 8. mit
auto_extend, ist mir auch schleierhaft. Wenn überhaupt auto_extend,
dann nur einen. Evtl. willst du aber auch file-per-table. Wer weiß?

Die anderen Werte stehen mehr oder minder auf den (sehr konservativen,
also speichersparenden und damit eher langsamen) Defaults.


XL