Selasa, 27 Oktober 2009
Instalasi Mysql 5.1.34 di solaris 10
Terusik dengan performa MySQL di solaris 10. Pagi ini sebelum beraktifikas, ditemani mesin X4150 dan external storage, saatnya merajut script ruwet.
Tidak semulus yang dibayangkan namun mudah
download mysql-5.1.34-solaris10-x86_64.tar.gz bisa dicari di download mysql.
taruh di /export/home
cd /export/home
gunzip mysql-5.1.34-solaris10-x86_64.tar.gz
tar -xvf mysql-5.1.34-solaris10-x86_64.tar
groupadd mysql
useradd -g mysql mysql
mv mysql-5.1.34-solaris10-x86_64 mysql
cd mysql
chown -R mysql .
chgrp -R mysql .
scripts/mysql_install_db --user=mysql
chown -R root .
chown -R mysql data
kemudian cek dengan
root@sbypoc # bin/mysqld_safe --user=mysql &
[1] 634
root@sbypoc # 091027 12:54:37 mysqld_safe Logging to '/export/home/mysql/data/sbypoc.err'.
091027 12:54:37 mysqld_safe Starting mysqld daemon with databases from /export/home/mysql/data
root@sbypoc #ps -ef|grep mysql
root 634 393 0 12:54:37 pts/4 0:00 /bin/sh bin/mysqld_safe --user=mysql
sekarang menancapkan ke service ke smf
bikin file /lib/svc/method/svc-mysql
isinya
#!/usr/bin/sh
#
# William Pool (Puddle) 01/05
# SMF Method file for MySQL
# E-mail: puddle@flipmotion.com
#
# This uses Sun's default MySQL packages
# SUNWmysqlu SUNWmysqlr
# Modify accordingly!
#
# NOTE: Make sure DB_DIR is owned BY the mysql
# user and group and chmod 700.
#
. /lib/svc/share/smf_include.sh
DB_DIR=/export/home/mysql/data
PIDFILE=${DB_DIR}/`/usr/bin/uname -n`.pid
case "$1" in
start)
/export/home/mysql/bin/mysqld_safe --user=mysql \
--datadir=${DB_DIR} --pid-file=${PIDFILE} \
> /dev/null &
;;
stop)
if [ -f ${PIDFILE} ]; then
/usr/bin/pkill mysqld_safe >/dev/null 2>&1
/usr/bin/kill `cat ${PIDFILE}` > /dev/null 2>&1 \
&& echo -n ' mysqld'
fi
;;
'restart')
stop
while pgrep mysqld > /dev/null
do
sleep 1
done
start
;;
*)
echo ""
echo "Usage: `basename $0` \
{ start | stop | restart }"
echo ""
exit 64
;;
esac
kemudian buat file /var/svc/manifest/network/mysql.xml
isinya
<?xml version='1.0'?>
<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
<!--
William Pool (Puddle) 02/05
Service manifest for MySQL
E-mail: puddle@flipmotion.com
-->
<service_bundle type='manifest' name='mysql:mysql'>
<service
name='network/mysql'
type='service'
version='1'>
<create_default_instance enabled='false' />
<single_instance />
<dependency name='fs'
grouping='require_all'
restart_on='none'
type='service'>
<service_fmri value='svc:/system/filesystem/local' />
</dependency>
<dependency name='net'
grouping='require_all'
restart_on='none'
type='service'>
<service_fmri value='svc:/network/loopback' />
</dependency>
<exec_method
type='method'
name='start'
exec='/lib/svc/method/svc-mysql start'
timeout_seconds='-1'>
<method_context>
<method_credential user='mysql' group='mysql' />
</method_context>
</exec_method>
<exec_method
type='method'
name='stop'
exec=':kill'
timeout_seconds='-1'>
</exec_method>
<exec_method
type='method'
name='restart'
exec='/lib/svc/method/svc-mysql restart'
timeout_seconds='-1'>
</exec_method>
</service>
</service_bundle>
kemudian kita ubah permisi filenya
chown root:bin /lib/svc/method/svc-mysql
chmod 555 /lib/svc/method/svc-mysql
chown root:sys /var/svc/manifest/network/mysql.xml
chmod 444 /var/svc/manifest/network/mysql.xml
chown -R mysql:mysql /export/home/mysql
chmod -R 700 /export/home/mysql/data
kita lakukan import ke SMF
svccfg import /var/svc/manifest/network/mysql.xml
svcadm -v enable mysql
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar