Dasar MySQL dan Administrasi User

Mengenal MySQL
Apa itu MySQL?

MySQL adalah salah satu jenis database server yang sangat terkenal.
MySQL menggunakan SQL sebagai bahasa dasar untuk mengakses databasenya.
Selain itu, MySQL bersifat free (Anda tidak perlu membayar untuk menggunakannya) pada pelbagai platform (kecuali pada Windows, yang bersifat shareware)
MySQL termasuk jenis RDBMS (Relational Database Management System). Itulah sebabnya, istilah seperti tabel, baris, dan kolom digunakan pada MySQL. Pada MySQL, sebuah database mengandung satu atau sejumlah tabel. Tabel terdiri atas sejumlah baris dan setiap baris mengandung satu atau beberapa kolom.
Mengatur Password Root
root adalah pemakai dengan level tertinggi pada MySQL yang bisa melakukan apa saja terhadap database MySQL.
Pemberian password dapat Anda lakukan dengan memberikan perintah sebagai berikut:

mysqladmin -uroot password gandhi —-> perintah ini berarti kita mengeset password root dengan password “gandhi”.

Setelah perintah di atas Anda berikan, untuk menjadi root Anda perlu mengetikkan password berupa kata gandhi.

NB :

Jika kita telah memberikan password seperti di atas dan kemudian kita ingin mengganti password root menjadi “rahasia”, maka lakukan perintah seperti berikut:

mysqladmin -uroot -p password rahasia

Yang perlu diperhatikan adanya tambahan -p. Kita akan segera menjumpai tanggapan sebagai berikut:

Enter password:

Ketikkan password semula dan tekan Enter. Selanjutnya, password untuk root sudah berubah menjadi rahasia.

Menjalankan Program Klien mysql


mysql adalah nama program pada klien untuk mengakses database MySQL
Untuk menjalankankannya, berikan perintah berikut pada prompt shell:

mysql -uroot -p

Saat muncul Enter password:

masukkan password dan tekan Enter. Anda akan menjumpai prompt:

mysql>

Langkah selanjutnya, kita bisa segera memberikan perintah-perintah mysql untuk memanipulasi database menggunakan MySQL.

Melihat Daftar Database
Untuk mengetahui nama-nama database yang terdapat pada MySQL, kita bisa menggunakan perintah SHOW DATABASES pada prompt mysql.
Sebagai contoh, ketikkan perintah berikut dan kemudian tekan Enter:

SHOW DATABASES;

Program mysql akan menginformasikan keberadaan dua buah database yaitu mysql dan test. Misal jika kita sudah memiliki database yang bernama buku, maka jika kita mengetikkan perintah SHOW DATABASES; maka database buku juga akan tampil.

Melakukan Koneksi ke Suatu Database
Kalau kita bermaksud melakukan pemanipulasian ke suatu database, kita perlu melakukan koneksi ke database tersebut terlebih dulu. Hal ini bisa dilakukan dengan menggunakan perintah mysql bernama USE.
Contoh:

USE user;

Anda akan mendapatkan tanggapan berupa :

Database changed

Mengetahui Nama-nama Tabel
Sebuah database dapat mengandung sejumlah tabel.
Untuk mengetahui tabel-tabel yang terdapat pada suatu database, kita bisa menggunakan perintah SHOW TABLES
Contoh :

SHOW TABLES;

Hasilnya semua tabel pada database tsb ditampilkan.

Mengetahui Struktur Tabel
Bila kita bermaksud mengetahui struktur suatu tabel, kita bisa menggunakan perintah DESCRIBE atau DESC.
Contoh untuk mengetahui struktur tabel bernama pajak :

DESC pajak;

Kita akan menjumpai hasil semacam berikut.

desc.gif

Keluar dari mysql

Salah satu perintah untuk keluar dari mysql:

exit
quit
\q

Melihat Isi Tabel user
Perintah untuk melihat tabel bernama pajak (setelah Anda mengaktifkan database):

SELECT * FROM user; —> jangan lupa akhiri perintah dengan titik koma “;”

Select * artinya kita menampilkan semua field. Dengan kata lain tanda “*” berarti semua. Anda akan menjumpai hasil semacam berikut.

user.gif

Pada tabel user, nilai % atau kosong pada kolom host berarti sembarang host adapun localhost berarti dari lokal tempat MySQL berada. Pada contoh di atas, pemakai bernama root dapat megakses dari localhost dengan disertai password, tetapi jika ia mengakses dari bukan localhost maka ia bisa mengakses database tanpa password. Sedangkan pemakai siapa saja selain root dapat mengakses dari mana saja tanpa password. Untuk alasan keamanan, tentu saja keadaan seperti perlu diubah. Cara mengubahnya dapat dilihat pada pembahasan berikut.

Menghapus Pemakai
Mungkin Anda bertanya-tanya, ketika Anda menjalankan mysql Anda sebenarnya berlaku sebagai pemakai siapa? Sesungguhnya apapun nama pemakai Anda Anda bisa mengakses mysql. Pertanyaan berikutnya yang mungkin timbul, “Mengapa bisa begitu?”. Jawabannya disebabkan pada tabel user terdapat pemakai dengan nama kosong, yang memungkinkan siapa saja bisa menjalankan mysql.
Sekarang, Anda dapat mencoba apa yang terjadi seandainya pemakai dengan nama kosong dihapus. Untuk melakukan penghapusan baris yang ada pada tabel, Anda bisa menggunakan perintah SQL bernama DELETE. Sebagai contoh, ketikkan perintah berikut dan kemudian tekan Enter:

DELETE FROM user WHERE user =” ”;

Perintah di atas digunakan untuk menghapus baris-baris pada tabel user yang memenuhi kondisi yakni kolom user berisi string kosong.

Anda bisa memberikan perintah berikut untuk melihat isi tabel user sekarang:

SELECT * FROM user;

Supaya perubahan yang baru saja Anda lakukan berpengaruh terhadap program mysql, Anda perlu memberikan perintah berikut:

flush privileges;

Perintah di atas digunakan agar informasi tentang privilege (hak akses terhadap database) dimuat kembali, sehingga perubahan akan berpengaruh pada tahap selanjutnya.
Sekarang, cobalah untuk keluar dari mysql dan kemudian jalankan mysql kembali dengan mengetikkan:

mysql

Apa yang terjadi? Anda akan menjumpai pesan kesalahan yang menyatakan Anda tak dapat mengakses mysql.

Mengakses mysql Melalui root
Begitu Anda menjumpai pesan seperti di depan, Anda barangkali bertanya-tanya, “Lalu bagaimana saya bisa menggunakan mysql?”. Jawabannya, Anda perlu menggunakan pemakai root atau melalui pemakai yang khusus dibuat untuk mengakses mysql.

Membuat Pemakai Baru
Pembuatan dilakukan dengan menggunakan perintah SQL bernama INSERT melalui root. Sebagai contoh, praktekkan perintah berikut:

INSERT INTO user (host, user, password)
VALUES (’localhost’, ‘php’, password(’gandhi));

Setelah Anda memberikan perintah di atas, berikan perintah:

flush privileges;

dan kemudian keluarlah dari mysql.
Selanjutnya ujilah pemakai yang baru Anda ciptakan dengan memberikan perintah berikut:

mysql -uphp -p

Perintah di atas digunakan untuk menjalankan program mysql dari pemakai bernama php. Ketikkan password gandhi ketika mysql memberikan tanggapan:

Enter password:

Anda akan segera menjumpai prompt mysql. Lalu, cobalah untuk memberikan perintah:

USE mysql;

Apa yang terjadi? Ternyata pemakai php tidak berhak mengakses database mysql. Mengapa begitu? Jawabannya adalah karena ketika Anda menciptakan pemakai php, Anda tidak mengatur wewenangnya. Pada keadaan ini semua pengaksesan terhadap database tidak diperkenankan.

Mengganti Wewenang untuk Pemakai php
Dengan menggunakan pemakai root, Anda bisa segera mengubah wewenang untuk pemakai php agar ia bisa melakukan koneksi ke suatu database dan juga melakukan pengaksesan terhadap tabel. Hal ini dapat dilakukan dengan menggunakan perintah SQL bernama UPDATE.
Untuk mempraktekkannya, jalankan mysql dengan memberikan perintah berikut terlebih dulu:

mysql -uroot -p

Setelah prompt mysql ditampilkan, berikan perintah:

USE mysql;

Selanjutnya berikan perintah berikut:

UPDATE user
SET select_priv = ‘Y’,
insert_priv = ‘Y’,
update_priv = ‘Y’,
delete_priv = ‘Y’,
create_priv = ‘Y’,
drop_priv = ‘Y’
WHERE user = ‘php’;

Perintah di atas digunakan untuk mengubah isi sejumlah kolom pada tabel user khusus untuk baris yang nilai user-nya berupa php. Perintah di atas digunakan agar pemakai php dapat melakukan operasi SELECT, UPDATE, DELETE terhadap tabel dan menciptakan (CREATE) dan menghapus (DROP) tabel.
Setelah Anda memberikan perintah di atas, berikan perintah:

flush privileges;

Selanjutnya dengan menggunakan pemakai php, Anda bisa mencoba perintah seperti use dan select.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: