Friday, November 14, 2008

 

Tune MySQL performance

For a dual-core machine with 2 GB of RAM:

$ cat /etc/mysql/conf.d/performance.cnf
[mysqld]
query_cache_size=32M
max_connections=300
thread_cache_size=80
thread_concurrency=4
key_buffer=128M
sort_buffer_size=1M
read_buffer_size=1M
read_rnd_buffer_size=1M

Especially max_connections is helpful if you have high concurrency and get "Lost connection to server during query" errors.

Thursday, November 13, 2008

 

MySQL character set information

General:

mysql> show variables like 'character_set_%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

Particular (existing) database/table etc:

mysql> show create database dbname;
+----------+--------------------------------------------------------------------+
| Database | Create Database |
+----------+--------------------------------------------------------------------+
| crawler | CREATE DATABASE `dbname` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+--------------------------------------------------------------------+
 

Set default MySQL charset in Ubuntu

$ cat /etc/mysql/conf.d/charset.cnf
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[mysql]
default-character-set=utf8

This page is powered by Blogger. Isn't yours?