sql

Технические вопросы по UTM 5.0
Ответить
MiO
Сообщения: 303
Зарегистрирован: Ср окт 01, 2008 23:34

sql

Сообщение MiO »

интересует следующее:
а) какую лучше базу использовать mysql: MyISAM или InnoDB?

б) может ли кто0нибудь выложить рабочий конфиг на базу при условии выделении под неё 3гб.

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

рекомендую ковырять запросы и модифицировать индексы. Главная задача - выделить под индексы максимум памяти, тогда отчеты делаются быстро. Могу показать свой конфиг(неидеальный) для отдельного сервера с mysql. На машине 8ГБ памяти.использую только myisam. Хотя это плохо :)

MiO
Сообщения: 303
Зарегистрирован: Ср окт 01, 2008 23:34

Сообщение MiO »

выложи свой конфиг, 8Гб оперативы то что надо! =)

MiO
Сообщения: 303
Зарегистрирован: Ср окт 01, 2008 23:34

Сообщение MiO »

и еще вопрос, InnoDB лучше?

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

принципиально - лучше. myisam может улечься просто на ровном месте, но работает побыстрее и меньше блокируется. InnoDB как транзакционная модель хранения данных более надежна.

MiO
Сообщения: 303
Зарегистрирован: Ср окт 01, 2008 23:34

Сообщение MiO »

выложи конфиг (если не сложно), чтоб хоть посмотреть в какую сторону люди копают :)

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

Код: Выделить всё

# The MySQL server
[mysqld]
#skip-character-set-client-handshake
port            = 3306
socket          = /tmp/mysql.sock
skip-locking
expire_logs_days=7
character-set-client=utf8
key_buffer = 1536M
max_allowed_packet = 16M
max_heap_table_size= 256M
tmp_table_size= 256M
table_cache = 512
sort_buffer_size = 256M
read_buffer_size = 2M
read_rnd_buffer_size = 16M
myisam_sort_buffer_size = 256M
thread_cache_size = 8
query_cache_size = 64M
query_cache_limit=16M
thread_concurrency = 8
old_passwords=1
init_connect='set names utf8;'
#replication slave setup
server-id       = 2
log-bin=mysql-bin
#replicate-do-db=UTM5
#replicate-wild-do-table=UTM5.%
#report-host=bla-bla
concurrent_insert=2
#slow queries
log-slow-queries
log-queries-not-using-indexes
long_query_time=5
max_connections=100
# Point the following paths to different dedicated disks
tmpdir          = /tmp/
#log-update     = /path-to-dedicated-directory/hostname

#innodb
#innodb_additional_mem_pool_size = 16M
#innodb_buffer_pool_size = 1G
innodb_data_file_path = innodb_file.db:10M:autoextend
#innodb_file_io_threads = 4
#innodb_force_recovery=0
#innodb_thread_concurrency = 8
#innodb_flush_log_at_trx_commit = 2
#innodb_log_buffer_size = 4M
#innodb_log_file_size = 256M
#innodb_log_files_in_group = 3
#innodb_max_dirty_pages_pct = 90
#innodb_flush_method=O_DIRECT
#innodb_lock_wait_timeout = 120
innodb_file_per_table = 1
рекомендую поискать в гугле mysqltuner.pl и tuning-primer.sh
Полезные вещи. Заодно ковырять индексы. Родные в большинстве случаев лучше удалить.
У меня суммарное пространство индексов на всю СУБД ща 12.5ГБ, с родными индексами оно было больше 20ГБ.

Ответить