MySQLi - Administrasi

Menjalankan dan Mematikan Server MySQLi

MySQLi adalah perpanjangan dari MySQL jadi periksa dulu apakah server MySQL Anda berjalan atau tidak. Anda dapat menggunakan perintah berikut untuk memeriksa ini -

ps -ef | grep mysqld

Jika MySql Anda aktif, Anda akan melihat mysqldproses yang tercantum dalam hasil Anda. Jika server tidak berjalan, maka Anda dapat memulainya dengan menggunakan perintah berikut−

root@host# cd /usr/bin
./safe_mysqld &

Sekarang, jika Anda ingin mematikan server MySQL yang sudah berjalan, Anda dapat melakukannya dengan menggunakan perintah berikut -

root@host# cd /usr/bin
./mysqladmin -u root -p shutdown
Enter password: ******

Menyiapkan Akun Pengguna MySQLi

Untuk menambahkan pengguna baru ke MySQLi Yang merupakan versi perbaikan dari MySQL, Anda hanya perlu menambahkan entri baru ke user tabel dalam database mysql.

Di bawah ini adalah contoh menambahkan pengguna baru guest dengan hak istimewa SELECT, INSERT dan UPDATE dengan password guest123; kueri SQL adalah -

root@host# mysql -u root -p
Enter password:*******
mysql> use mysql;
Database changed

mysql> INSERT INTO user (
   host, user, password, select_priv, insert_priv, update_priv) 
   VALUES ('localhost', 'guest', PASSWORD('guest123'), 'Y', 'Y', 'Y');

Query OK, 1 row affected (0.20 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 1 row affected (0.01 sec)

mysql> SELECT host, user, password FROM user WHERE user = 'guest';
+-----------+---------+------------------+
| host      | user    | password         |
+-----------+---------+------------------+
| localhost | guest | 6f8c114b58f2ce9e |
+-----------+---------+------------------+
1 row in set (0.00 sec)

Saat menambahkan pengguna baru, ingatlah untuk mengenkripsi kata sandi baru menggunakan fungsi PASSWORD () yang disediakan oleh MySQL. Seperti yang Anda lihat pada contoh di atas, sandi mypass dienkripsi ke 6f8c114b58f2ce9e.

Perhatikan pernyataan FLUSH PRIVILEGES. Ini memberitahu server untuk memuat ulang tabel hibah. Jika Anda tidak menggunakannya, maka Anda tidak akan dapat terhubung ke mysql menggunakan akun pengguna baru setidaknya sampai server di-boot ulang.

Anda juga dapat menentukan hak istimewa lain untuk pengguna baru dengan menyetel nilai kolom berikut di tabel pengguna ke 'Y' saat menjalankan kueri INSERT atau Anda dapat memperbaruinya nanti menggunakan kueri UPDATE.

  • Select_priv
  • Insert_priv
  • Update_priv
  • Delete_priv
  • Create_priv
  • Drop_priv
  • Reload_priv
  • Shutdown_priv
  • Process_priv
  • File_priv
  • Grant_priv
  • References_priv
  • Index_priv
  • Alter_priv

Cara lain untuk menambahkan akun pengguna adalah dengan menggunakan perintah GRANT SQL; contoh berikut akan menambah penggunazara dengan kata sandi zara123 untuk database tertentu yang disebut TUTORIALS.

root@host# mysql -u root -p password;
Enter password:*******
mysql> use mysql;
Database changed

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
   -> ON TUTORIALS.*
   -> TO 'zara'@'localhost'
   -> IDENTIFIED BY 'zara123';

Ini juga akan membuat entri dalam tabel database mysql yang disebut user.

NOTE - MySQL tidak menghentikan perintah sampai Anda memberikan titik koma (;) di akhir perintah SQL.

Konfigurasi File /etc/my.cnf

Sebagian besar kasus, Anda tidak boleh menyentuh file ini. Secara default, ini akan memiliki entri berikut -

[mysqld]
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql.sock

[mysql.server]
user = mysql
basedir = /var/lib

[safe_mysqld]
err-log = /var/log/mysqld.log
pid-file = /var/run/mysqld/mysqld.pid

Di sini, Anda dapat menentukan direktori lain untuk log kesalahan, jika tidak, Anda tidak boleh mengubah entri apa pun dalam tabel ini.

Perintah MySQLi Administratif

Berikut adalah daftar perintah penting MySQLi, yang akan Anda gunakan dari waktu ke waktu untuk bekerja dengan database MySQL -

  • USE Databasename - Ini akan digunakan untuk memilih database tertentu di area kerja MySQLi.

  • SHOW DATABASES - Mencantumkan database yang dapat diakses oleh DBMS MySQLi.

  • SHOW TABLES - Menampilkan tabel dalam database setelah database dipilih dengan perintah penggunaan.

  • SHOW COLUMNS FROM tablename - Menunjukkan atribut, jenis atribut, informasi kunci, apakah NULL diizinkan, default, dan informasi lain untuk tabel.

  • SHOW INDEX FROM tablename - Menampilkan detail semua indeks di atas tabel, termasuk KUNCI UTAMA.

  • SHOW TABLE STATUS LIKE tablename\G - Laporan rincian kinerja dan statistik MySQLi DBMS.