FreeBSD hardware solution for a database server
Uzi Klein
uzi at bmby.com
Sun Aug 21 12:23:24 GMT 2005
Stuart Cianos wrote:
> Hi Uzi -
>
> That is a decent configuration for a variety of tasks. What type of
> speed issues are you seeing: is it limited to a couple of queries? How
> many transactions are you running in a given time period? Have you
> optimized the indexes on your tables for your particular tasks and/or
> operations?
mysql> \s
--------------
mysql Ver 14.7 Distrib 4.1.13, for portbld-freebsd5.4 (i386) using 4.3
Connection id: 16931
Current database: *******
Current user: *******
SSL: Not in use
Current pager: more
Using outfile: ''
Using delimiter: ;
Server version: 4.1.12-log
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
UNIX socket: /tmp/mysql.sock
Uptime: 3 days 2 hours 30 min 38 sec
Threads: 22 Questions: 1070775 Slow queries: 356 Opens: 64745 Flush
tables: 1 Open tables: 256 Queries per second avg: 3.992
--------------
>
> If you copy your configuration file and post it to the list (make sure
> you remove any sensitive info like usernames or passwords, if you store
> that type of thing in there) we might be able to help you a bit more.
Server is a Proliant DL380 G4 (dual Xeon 3.2, 2 GB ram)
www# uname -v
FreeBSD 5.4-RELEASE-p6 #4: Mon Aug 1 17:26:05 UTC 2005
mook at server.com:/usr/obj/usr/src/sys/WWW
www# cat /boot/loader.conf
kern.maxdsiz="1073741824"
kern.dfldsiz="1073741824"
kern.maxssiz="1073741824"
from my.cnf :
# The MySQL server
[mysqld]
port = 3306
socket = /tmp/mysql.sock
skip-locking
key_buffer = 256M
max_allowed_packet = 1M
table_cache = 256
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size= 16M
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8
> If you haven't tuned your config file for your particular configuration,
> then this can also result in performance not being up to par. Ensure
> that your kernel is compiled for SMP capability and that your MySQL is
> compiled with optimization ON for maximum throughput. While the
> optimization doesn't make a huge difference in the short run, millions
> of transactions later a couple of miliseconds here and miliseconds there
> add up to real time.
Kernel is compiled with SMP support
MySQL compiled with:
WITH_PROC_SCOPE_PTH=yes BUILD_OPTIMIZED=yes BUILD_STATIC=yes
>
> RAID 0/1 is ideal, although RAID 5 is very sufficient for most all
> purposes in this case. If we were running Oracle or Sybase, then
> different RAID configurations suit different storage requirements, i.e.
> RAID 5 for the table data storage and RAID 0/1 for the transaction logs.
> There reasons for this get fairly technical, but if you are interested
> in the reasons behind this you can google the topic. MySQL doesn't have
> such demanding performance tuning requirements.
That what my original question meant to be:
What are the minimum/recommended system requirements (*hardware* wise)
for a heavy loaded database server.
Thanks, Uzi
More information about the freebsd-database
mailing list