This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA

saya ga akan panjang lebar menjelaskan error ini, karena ini sebagai catatan pindahan dari notepad saja, hehe..

error

This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA

solution

Type in Mysql Query

SET GLOBAL log_bin_trust_function_creators = 1;

Install MySQL on CentOS by command

Install MySQL hanya menggunakan command sell di CentOS. versi CentOS yang saya gunakan adalah versi 5.9 ( Final ). tapi mungkin akan bermanfaat untuk versi lainnya. cara mengecek versi CentOS

cat /etc/*release

install MySQL

yum install mysql-server mysql php-mysql

Start MySQL service

service mysqld start

Log into MySQL

mysql -u root

Setting root user dan password untuk semua user yang terpasang secara default pasca instalasi ;

SET PASSWORD FOR ‘root’@'localhost’ = PASSWORD(‘new-password’);
SET PASSWORD FOR ‘root’@'localhost.localdomain’ = PASSWORD(‘new-password’);
SET PASSWORD FOR ‘root’@’127.0.0.1′ = PASSWORD(‘new-password’);

Drop user selain root

DROP USER ”@’localhost’;
DROP USER ”@’localhost.localdomain’;

Keluar MySQL

exit

re – Set Up MySQL Replication

database replikasi adalah salah satu metode yang bisa kamu gunakan jika kamu ingin membagi database ke lebih dari satu tempat ( server ), namun masih terintregasi dengan server yang lain secara datanya ( replicated ).

jika kamu ingin mencoba melakukan setting database replication, saya rekomendasikan link ini http://www.howtoforge.com/mysql_database_replication , karena cara disitu saya rasa cara yang paling mudah.

setelah selesai setting database replikasi, cek status master dengan proccesslist

show PROCESSLIST

jika setting master benar, maka “state” yang tampil seharusnya seperti ini

Master has sent all binlog to slave; waiting for binlog to be updated

kemudian, cek status slave dengan processlist juga, jika setting slave benar, maka “state” yang tampil seharusnya dua baris seperti ini

Waiting for master to send event
Has read all relay log; waiting for the slave I/O thread to update it

terkadang jika koneksi terputus ditengah – tengah, atau ada proses replikasi yang di “kill processed”, mengakibatkan replikasi tidak tereplikasi dengan benar ( not replicated ). dan biasanya, Slave_IO_Running tidak bisa dijalankan walaupun slave di restart berkali – kali.

Slave_IO_Running : No

jika timbul masalah ini, maka kita harus setting ulang replikasi pada slave dengan metode perintah di mysql command,

pertama cek status master, sebagai contoh saya keluarkan status pada database master yang saya gunakan

database master :

show master status

output :

File : mysql-bin.000008

Position : 1012

Binlog_Do_Db : db_rep

kemudian saya set ulang replikasi pada slave database dengan mysql command seperti ini

CHANGE MASTER TO MASTER_HOST=’<host_di_master_server>’, MASTER_USER=’<user_di_master_server>’, MASTER_PASSWORD=’<password_di_master_server>’, MASTER_LOG_FILE=’mysql-bin.000008′, MASTER_LOG_POS=1012;

variabel :

  • MASTER_HOST : ip server yang dijadikan database master
  • MASTER_USER : username mySQL yang ada di database master
  • MASTER_PASSWORD : password mySQL yang ada di database master
  • MASTER_LOG_FILE : log yang terakhir digunakan oleh database master, kita bisa melihat log terakhir dengan perintah mySQL command ” show master status “
  • MASTER_LOG_POS : posisi terakhir yang ada di database master, kita juga bisa melihat posisi terakhir dengan perintah yang adama pada MySQL command :  ” show master status “

setelah selesai, kemudian jalankan slave

START SLAVE

silahkan dicoba :)