1

Тема: переменые

настройка переменных что то поставила меня в тупик если честно? мне необходимо изменить tmp_table_size и table_cache, где именно прописать эти значения и можно ли эти значения изменять sql запросами.

2

Re: переменые

Обратите внимание, что обе эти переменные удалены начиная с версии 5.1.12.

tmp_table_size - устанавливается в конфигурационном файле MySQL (my.cnf/my.ini), либо может быть установлена глобально или сессионно с помощью запроса SET GLOBAL и SET SESSION, соответственно.

table_cache - устанавливается в конфигурационном файле, либо глобально через запрос SET GLOBAL table_cache=...

3 (изменено: vanicon, 2009-09-27 08:40:52)

Re: переменые

в
.my.cnf

[server]
bind-address = 212.193.236.78
tmp_table_size = 32M

когда я делаю такой запрос SET GLOBAL tmp_table_size=32M выводит #1232 - Incorrect argument type to variable 'tmp_table_size'

4

Re: переменые

vanicon
Суффиксы K, M, G можно использовать только в конфигурационном файле, в запросе SET необходимо указывать значение в байтах.
Как вариант можно писать так:
SET GLOBAL tmp_table_size=32*1024*1024;

5 (изменено: vanicon, 2010-02-08 20:38:21)

Re: переменые

Извени но хотелось бы вернутся к этой теме , вот этой командой на сколько увеличивается. Вот у меня стоит вот такое значение tmp_table_size 33,554,432. При просмотре состояния сервера пишет необходимо увеличить эту переменную. Так как мне запрос правильно выполнить, да и еще сразу как узнать какая версия phpmyadmin установлена и нуждается ли она в обновлении.
Да и еще приведи пожалуйста пример запроса на увеличении вот этого значения table_cache

6

Re: переменые

vanicon
В Килобайте 1024 байт.
В Мегабайте 1024 Килобайт.
32*1024*1024 = 32 Мегабайта.

Версия phpMyAdmin выводится на главной странице phpMyAdmin. Последние версии находятся здесь: http://php-myadmin.ru/download/

Запрос на изменение переменных имеет один и тот же вид:
SET GLOBAL table_cache=64;

Если версия MySQL 5.1.3 или выше, то необходимо использовать переменную table_open_cache вместо устаревшей table_cache.
Значение переменной необходимо соотносить со значением статусной переменной, которую можно увидеть запросом:
SHOW STATUS LIKE "Opened_tables";

7 (изменено: vanicon, 2010-02-09 07:03:30)

Re: переменые

Спасибо тебе все получилось, и еще вопрос если можно, до каких пор можно это значение увеличивать, и сразу второй где прочитать как правильно обновить server на русском языке ткни пожалуйста у меня версия  5.1.37, имеется ли возможность автоматического обновления.
Блин извени но сразу поправлю еще один вопрос tmp_table_size я увеличил таким же запросом до 64 но при просмотре переменных в таблице общей вижу значение 1,024

8

Re: переменые

Минимальные и максимальные значения указаны в документации. Само значение зависит от железа сервера и опыта.
http://dev.mysql.com/doc/refman/5.1/en/ … table_size
http://dev.mysql.com/doc/refman/5.1/en/ … open_cache

Обновляется MySQL, как и любая другая программа - вручную. Где об этом почитать, я даже не знаю.

Каким запросом обновили tmp_table_size и каким смотрите состояние переменной?

9

Re: переменые

SET GLOBAL tmp_table_size=64; Вот так добавил, а смотрю просто нажимаю в админки на вкладку переменные и она все выводит. На счет обновления вручную где можно по русски и попадробнее , может здесь на форуме какой топик написать по шаговое обнавления вот бы дедо было

10

Re: переменые

vanicon
Если вы хотели увеличить размер временных таблиц до 64 Мегабайт, то надо было писать так:
SET GLOBAL tmp_table_size=64*1024*1024;

Минимальное значение данной переменной 1024 байт, поэтому вы не видели никаких изменений.

По обновлению я даже не знаю что писать. В Windows все очевидно, а в Linux еще проще.

Сперва проверяем надо ли обновлять:
# yum check-update mysql

Если надо, то:
# yum update mysql