SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 20.05.2009 03:56:56

Proger
Активист
Откуда: Санкт-Петербург
Зарегистрирован: 04.09.2008
Сообщений: 172

InnoDB free: 592896 kB, а когда наступит 0, что будет?

Здраствуйте.
Собственно вопрос в названии темы. На небольшем но всё же набирающем обороты сайтике есть базка и вот память инноДБ жуёт все активней, а что произойдет когда количество оперативки станет 0 (свободной).
Может мой вопрос покажется дурацким и глупым, но честное слово - не хочу узнать это неожиданно по факту и столкнутся с проблемами.
Заранее спасибо за ответ.

Неактивен

 

#2 20.05.2009 11:48:33

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: InnoDB free: 592896 kB, а когда наступит 0, что будет?

Все зависит от настроек InnoDB. Скорее всего, у Вас стоит что-нибудь типа
ibdata1:10M:autoextend. Когда место в этом файлике закончится, он автоматически
увеличит размер. Если стоит innodb_file_per_table, то каждая табличка пишется в
свой файлик, и тоже автоматически увеличивает размер файлика.

Посмотреть настройки можно командой "SHOW VARIABLES LIKE 'inno%'".

Неактивен

 

#3 20.05.2009 16:07:33

Proger
Активист
Откуда: Санкт-Петербург
Зарегистрирован: 04.09.2008
Сообщений: 172

Re: InnoDB free: 592896 kB, а когда наступит 0, что будет?

Variable_name    Value
innodb_additional_mem_pool_size    1048576
innodb_autoextend_increment    8
innodb_buffer_pool_awe_mem_mb    0
innodb_buffer_pool_size    8388608
innodb_checksums    ON
innodb_commit_concurrency    0
innodb_concurrency_tickets    500
innodb_data_file_path    ibdata1:10M:autoextend
innodb_data_home_dir    
innodb_doublewrite    ON
innodb_fast_shutdown    1
innodb_file_io_threads    4
innodb_file_per_table    OFF
innodb_flush_log_at_trx_commit    0
innodb_flush_method    
innodb_force_recovery    0
innodb_lock_wait_timeout    50
innodb_locks_unsafe_for_binlog    OFF
innodb_log_arch_dir    
innodb_log_archive    OFF
innodb_log_buffer_size    1048576
innodb_log_file_size    5242880
innodb_log_files_in_group    2
innodb_log_group_home_dir    ./
innodb_max_dirty_pages_pct    90
innodb_max_purge_lag    0
innodb_mirrored_log_groups    1
innodb_open_files    300
innodb_rollback_on_timeout    OFF
innodb_support_xa    ON
innodb_sync_spin_loops    20
innodb_table_locks    ON
innodb_thread_concurrency    8
innodb_thread_sleep_delay    10000


То есть никаких сюрпризов при достижении нуля не будет? А быстродействие от этого не упадет? Или он будет держать в памяти только самые нужные данные (частоиспользуемые)?

Отредактированно Proger (20.05.2009 16:08:43)

Неактивен

 

#4 20.05.2009 20:22:53

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 845

Re: InnoDB free: 592896 kB, а когда наступит 0, что будет?

paulus написал:

Все зависит от настроек InnoDB. Скорее всего, у Вас стоит что-нибудь типа
ibdata1:10M:autoextend. Когда место в этом файлике закончится, он автоматически
увеличит размер. Если стоит innodb_file_per_table, то каждая табличка пишется в
свой файлик, и тоже автоматически увеличивает размер файлика.

Имхо ibdata на диске. А речь-то про память:

proger написал:

что произойдет когда количество оперативки станет 0 (свободной)

Я думаю, ничего особенного не произойдет. Будет всё почаще на диск скидывать.

Неактивен

 

#5 20.05.2009 20:32:10

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: InnoDB free: 592896 kB, а когда наступит 0, что будет?

В памяти — конечно, самые используемые.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson