33 lines
2 KiB
Text
33 lines
2 KiB
Text
Beberapa perintah SQL yang menurut saya penting. Diambil dari [[Nixnet Docs>SQL Snippets]].
|
|
|
|
++**NB**: Mengkapitalisasi perintah SQL tidak wajib tetapi dianggap praktik terbaik karena bertujuan untuk memudahkan membedakan antara perintah dan argumen.++
|
|
|
|
= MySQL
|
|
== Manajemen pengguna
|
|
* Membuat DB: `CREATE DATABASE database_name;`
|
|
* Membuat pengguna: `CREATE USER 'user_name'@'localhost' IDENTIFIED BY 'password';`
|
|
* Memberikan izin kepada pengguna: `GRANT ALL ON database_name.* TO 'user_name'@'localhost' IDENTIFIED BY 'password';`
|
|
* Menampilkan semua pengguna: `SELECT User FROM mysql.user;`
|
|
|
|
Tentu saja kamu harus mengganti `password` dengan kata sandi yang benar-benar aman, `user_name` dengan sesuatu yang dapat diidentifikasi, dan hal yang sama untuk `database_name`. Bahkan jika satu pengguna per database, lebih baik menggunakan nama yang berbeda untuk setiap database.
|
|
|
|
== Manajemen database
|
|
* Menampilkan semua database: `SHOW DATABASE;`
|
|
* Pilih database: `USE DATABASE;`
|
|
* Menampilkan tabel: `SHOW TABLES;`
|
|
* Menampilkan isi tabel: `SELECT * FROM table;`
|
|
* Hapus baris: `DELETE FROM table WHERE column=value;`
|
|
* Ekspor database untuk backup: `mysqldump dbname > dbname_$(date -u -Iseconds).sql` (jalankan sebagai perintah shell)
|
|
** Ekspor database dengan kompresi: `mysqldump dbname | gzip -c - > dbname_$(date -u -Iseconds).sql.gz`
|
|
* Mengembalikan backup ke database: `mysql dbname < backup.sql`
|
|
** Dengan kompresi: `gunzip backup.sql.gz` kemudian jalankan perintah di atas.
|
|
|
|
= Postgres
|
|
* Menampilkan DB: `\l`
|
|
* Membuat pengguna: `CREATE ROLE app_user WITH LOGIN ENCRYPTED PASSWORD 'password';`
|
|
** Sebagai alternatif, jalankan perintah berikut dengan `sudo`: `sudo -u postgres createuser -P app_user`
|
|
* Buat database: `CREATE DATABASE app WITH OWNER app_user ENCODING = 'UTF8';`
|
|
** Sebagai alternatif, jalankan perintah berikut dengan `sudo`: `sudo -u postgres createdb -O app_user app`
|
|
* Ubah pemilik DB: `ALTER DATABASE app OWNER TO new_app_user;`
|
|
* Hubungkan/pilih database: `\c <database>`
|
|
* Tampilkan tabel: `\dt`
|