Thursday, April 05, 2007

Build MySQL-5.0.33 from Source

TuxCatatan saya kali ini tentang instalasi MySQL di Linux sebagai rangkaian tulisan mengenai “Build Linux Web Server from Source”. Dalam kesempatan lain akan saya lanjutkan step-by-step instalasi Apache 2.2.4 dan PHP 5.2.0.

Tanggal 9 Januari 2007 yang lalu MySQL 5.0.33 Community Server diluncurkan, namun baru tersedia source distribution sedang binary distribution untuk Linux, W*nd*ws, dan sistem operasi yang lain belum dirilis.

Langkah pertama, mengunduh MySQL-5.0.33 source (22 MB), silahkan ambil di mirror indonesia,

wget -bc http://komo.vlsm.org/mysql/Downloads/MySQL-5.0/mysql-5.0.33.tar.gz

Sambil menunggu source diunduh, periksa apakah user dan group mysql sudah ada di system anda.

cat /etc/passwd | grep mysql

Bila belum ada, buatlah dulu :

groupadd mysql
adduser -g mysql mysql

Ektrak paket MySQL :
tar zxvf mysql-5.0.33.tar.gz

cd mysql-5.0.33

Selanjutnya, untuk optimalisasi kode program dan menghasilkan binary yang stable, ketik gcc environment variables di bawah ini :

mysql-5.0.33]# CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"

Sebelum meng-compile MySQL, ada baiknya melihat petunjuk konfigurasinya sehingga anda bisa memilih konfigurasi sesuai kebutuhan.
mysql-5.0.33]# ./configure --help

Berikut ini konfigurasi yang saya gunakan :
- direktori target instalasi /usr/local/mysql
- lokasi file konfigurasi (my.cnf) /etc/
- database direktori /usr/local/mysql/data
- semua executabel file ditaruh di /usr/local/mysql/bin
- default unix socket /tmp/mysql.sock
- character set : utf8

Ok. kita mulai meng-compile :

mysql-5.0.33]# ./configure --prefix=/usr/local/mysql --libexecdir=/usr/local/mysql/bin --enable-assembler --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --datadir=/usr/local/mysql/data --with-charset=utf8 --with-extra-charsets=complex --sysconfdir=/etc --enable-thread-safe-client --enable-local-infile --with-unix-socket-path=/tmp/mysql.sock

Selanjutnya, selasai proses configure selesai ketik :
mysql-5.0.33]# make
mysql-5.0.33]# make install

Set user.group kepemilikan dalam direktori /usr/local/mysql
mysql-5.0.33]# chown -R mysql.mysql /usr/local/mysql
mysql-5.0.33]# chmod 700 /usr/local/mysql/data

Copy file konfigurasi MySQL :
mysql-5.0.33]# cp support-files/my-medium.cnf /etc/my.cnf

Langkah berikutnya, membuat database mysql dan
mysql-5.0.33]# ./scripts/mysql_install_db --user=mysql
mysql-5.0.33]# chown -R mysql.mysql /usr/local/mysql

Copy file mysql.server untuk mengeksekusi mysql demon.
mysql-5.0.33]# cp support-files/mysql.server /usr/sbin
mysql-5.0.33]# chmod 744 /usr/sbin/mysql.server

Ada beberapa cara untuk menjalankan mysql demon :

mysql-5.0.33]# /mysql.server start
mysql-5.0.33]# /usr/local/mysql/bin/mysqld_safe --user=mysql &
mysql-5.0.33]# /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/mysql.pid --skip-external-locking --port=3306 --socket=/tmp/mysql.sock --bind-address=127.0.0.1 &

Periksa layanan proses : ps aux | grep mysql

Set password root, hapus anonymous users, dan delete test database
mysql-5.0.33]# ./scripts/mysql_secure_installation

Tes Instalasi :
mysql-5.0.33]# cd /usr/local/mysql/bin

* Melihat variable yang digunakan MySQL server
/usr/local/mysql/bin]# ./mysqladmin -u -p variables
* Melihat MySQL server status :
/usr/local/mysql/bin]# ./mysqladmin -V
* MySQL Comman Line Interface :
/usr/local/mysql/bin]# ./mysql -u -p
* shutdown :
/usr/local/mysql/bin]# ./mysqladmin -u -p shutdown

Activate MySQL on boot :
vi /etc/rc.d/rc.local
tambahkan perintah : /usr/sbin/mysql.server start
atau perintah sejenis sesuai kebutuhan.

Bersambung…
Berikutnya Instalasi Apache HTTP Server 2.2.4

0 comments:

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More