Thursday, May 07, 2015

Error Connecting To Database, Mysql



Namanya berurusan dengan webserver ya begini, ada saja kendalanya seperti salah satu notifikasi yang sering terlihat seperti dibawah ini.

" error connecting to database "

Apabila menemui kendala seperti diatas tidak usah bingung, ditelusuri dahulu apa yang menjadi masalahnya.

Berdasarkan pengalaman ada beberapa kemungkinan penyebabnya yaitu :
  1. Pada file conf. ada kesalahan pada nama database [ db ], nama db username, db password, port default  nya diubah.
  2. Belum/ lupa membuat database atau belum/ lupa import database, poin 2 ini biasanya terjadi saat memindahkan aplikasi berbasis web ke webserver yang lain, contoh Joomla, Wordpress, Drupal, Zabbix, Slims dsb.
  3. Kepemilikan database salah, yang benar secara default adalah mysql:mysql dengan access permission 0700.
Solusinya.
Cari & edit saja file conf. yang biasanya terdapat pada direktori utama aplikasi, contoh /var/www/joomla, terletak di dalam dir joomla.

Terkadang ada 1 atau 2 file conf., kalau sudah begitu periksa keduanya melalui Putty atau WinSCP dan cari dengan Ctrl+F " db " kemudian disesuaikan jika kita temukan ada yang salah.

Bisa juga juga dicari letak dir database yang dimaksud untuk diperiksa kepemilikannya yang seharusnya secara default dimiliki oleh mysql:mysql dengan access permission 0700. Jika tidak sesuai berarti salah misalkan database tsb malah dimiliki oleh root:root atau user lainnya.

Untuk mengembalikan atau memperbaiki kesalahan kepemilikan database ini bisa dilakukan dengan cara ini.
cd /var/lib/mysql
ls -l                                     # melihat kepemilikan file/ folder
chmod -Rf 700 joomladb                    # kemudian cari database yang dimaksud & diperbaiki kepemilikannya
chown -Rf mysql:mysql joomladb
service mysql restart
service apache2 restart
atau kalau mau lebih yakinnya dengan masuk ke dalam dir database tsb, lalu diubah kepemilikannya satu-persatu.
cd /var/lib/mysql
ls -l
# kemudian cari database yang dimaksud & diperbaiki kepemilikannya, misalnya nama database nya [ joomladb ]
cd /var/lib/mysql/joomladb
chmod -Rf 700 nama_dir                    # Lakukan ke setiap dir yang terdapat dalam dir database joomla
chown -Rf mysql:mysql nama_dir            # Lakukan ke setiap dir yang terdapat dalam dir database joomla
chmod -Rf 700 *.*                         # Untuk sisanya bila ada file-file lain
chown -Rf mysql:mysql *.*                 # Untuk sisanya bila ada file-file lain
service mysql restart
service apache2 restart
Setelah semua file conf. ke database tsb sudah diperiksa & dikonfigurasi secara benar baru kemudian di tes dengan mengakses ke aplikasi berbasis web tsb lewat ip address atau nama domainnya, misalkan e-pd.namadomainmu.com.

Jika halaman utama terbuka & tidak ada notifikasi error lainnya berarti masalah sudah berhasil kita atasi.

Selamat Mencoba !