MySQL Out of memory

440hz

php.ru
MySQL Out of memory

имеем

www(root):/home/440hz#>uname -a
FreeBSD www.dezinfo.net 5.5-STABLE FreeBSD 5.5-STABLE #1: Fri Jun 9 01:20:01 MSD 2006 [email protected]:/usr/obj/usr/src/sys/DEZINFO i386

www(root):/home/440hz#>mysql --help | head -3
mysql Ver 14.12 Distrib 5.0.67, for portbld-freebsd5.5 (i386) using 4.3
Copyright (C) 2000-2008 MySQL AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,

www(root):/var/db/mysql#>top -d 1 | grep mysql
26974 mysql 20 0 464M 69728K kserel 0 0:02 13.21% 3.91% mysqld

=======

# The MySQL server
[mysqld]
port = 3306
socket = /tmp/mysql.sock
skip-locking
key_buffer = 384M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size = 32M
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8


Все время валит Out of memory на выборке из таблицы в 100к записей.

==============

как увеличить память под прложение до 1Г раньше делал. забыл. что-то там в /bool/loader.conf прописывалось
 

440hz

php.ru
/usr/local/libexec/mysqld: ready for connections.
Version: '4.0.27' socket: '/tmp/mysql.sock' port: 3306 FreeBSD port: mysql-server-4.0.27
080630 9:46:39 /usr/local/libexec/mysqld: Out of memory. Restart daemon and try again (needed 67108856 bytes)
080630 9:46:39 /usr/local/libexec/mysqld: Sort aborted
080630 9:46:39 /usr/local/libexec/mysqld: Out of memory. Restart daemon and try again (needed 67108856 bytes)
080630 9:46:39 /usr/local/libexec/mysqld: Sort aborted
InnoDB: Fatal error: cannot allocate 25624 bytes of
InnoDB: memory with malloc! Total allocated memory
InnoDB: by InnoDB 16143312 bytes. Operating system errno: 12
InnoDB: Cannot continue operation!
InnoDB: Check if you should increase the swap file or
InnoDB: ulimits of your operating system.
InnoDB: On FreeBSD check you have compiled the OS with
InnoDB: a big enough maximum process size.
InnoDB: We now intentionally generate a seg fault so that
InnoDB: on Linux we get a stack trace.
mysqld got signal 11;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help diagnose
the problem, but since we have already crashed, something is definitely wrong
and this may fail.

===========================

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

ys

отодвинутый новичок
440hz

Мож `man login.conf`
Хотя помню, что другое место еще крутил, но точно ковырялся в этом файлике.
 

440hz

php.ru
hosting(440hz):~$>cat /boot/loader.conf
#
# для выделения большей памяти процессам
#

kern.maxdsiz="1601601536"
kern.dfldsiz="1601601536"
kern.maxssiz="134217728"

#
#
#
hosting(440hz):~$>limits
Resource limits (current):
cputime infinity secs
filesize infinity kB
datasize 1564064 kB
stacksize 131072 kB
coredumpsize infinity kB
memoryuse infinity kB
memorylocked infinity kB
maxprocesses 5547
openfiles 11095
sbsize infinity bytes
vmemoryuse infinity kB

www(root):/home/440hz#>top -d 1 | grep mysql
836 mysql 20 0 1186M 801M kserel 0 1:39 9.38% 9.38% mysqld


то что надо! всем спсибо!
 
Сверху