Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Membuat pengguna di MySQL

Tepat setelah Anda menginstal MySQL, Anda akan memiliki root pengguna tersedia.

Ini adalah pengguna yang mungkin Anda gunakan untuk mencoba dan melihat apakah MySQL berfungsi, tetapi tidak boleh menjadi pengguna untuk jenis penggunaan lain.

Mengapa? Karena terlalu kuat .

Dengan kekuatan besar datang tanggung jawab besar (kata paman Spider-Man). Dan khususnya, bahaya besar jika Anda membuat kesalahan.

Sebagai gantinya, Anda harus membuat pengguna ad-hoc yang hanya memiliki izin untuk melakukan pekerjaan mereka, dan tidak lebih. Sama untuk menggunakan Linux atau sistem Unix apa pun, misalnya:Anda tidak ingin menggunakan root pengguna, tetapi akun pengguna Anda sendiri.

Untuk membuat pengguna baru, sambungkan ke MySQL menggunakan root pengguna:

mysql -u root -p

lalu gunakan perintah

CREATE USER '<username>'@'localhost' IDENTIFIED BY '<password>';

Misalnya, untuk membuat pengguna bernama test_user dengan kata sandi test_password12A jalankan perintah:

CREATE USER 'test_user'@'localhost' IDENTIFIED BY 'test_password12A';

Perintah harus mengembalikan baris yang mengatakan Query OK, 0 rows affected (X.XX sec) :

Jika Anda menggunakan kata sandi yang tidak valid, sistem akan memberi tahu Anda sesuatu seperti ERROR 1819 (HY000): Your password does not satisfy the current policy requirements . Dalam hal ini kesalahan mengatakan bahwa kata sandinya tidak cukup rumit, karena ketika saya menginstal MySQL saya menyuruhnya untuk menggunakan kebijakan kata sandi tertentu.

Itu hebat! Sekarang pengguna telah dibuat, dan kita dapat terhubung menggunakan pengguna itu ke MySQL. Dari baris perintah Anda dapat keluar dengan mengetikkan QUIT , dan mengetik:

mysql -u test_user -p

Sekarang jika saya mencoba membuat database, saya akan mendapatkan error yang mengatakan ERROR 1044 (42000): Access denied for user 'test_user'@'localhost' to database 'testing' :

Mengapa? Karena pengguna tidak memiliki izin untuk membuat database baru .

Kita akan melihat cara bekerja dengan izin di tutorial lain.

Perlu disebutkan @'localhost' string yang kami gunakan untuk membuat pengguna. Ini memberitahu MySQL bahwa pengguna hanya dapat terhubung dari localhost. Yang baik-baik saja ketika menguji berbagai hal dan ketika aplikasi apa pun yang akan terhubung ke MySQL berjalan di komputer yang sama yang menjalankan DBMS.

Jika ini tidak benar, Anda harus memasukkan secara manual IP dari mana pengguna akan terhubung, atau gunakan % kartu pengganti:

CREATE USER 'test_user'@'%' IDENTIFIED BY 'test_password12A';

Saya ingin menutup tutorial ini dengan menunjukkan cara menghapus pengguna yang kita buat:

DROP USER 'test_user'@'localhost';

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL di Docker - Cara Menampung Basis Data Anda :Buku Putih Baru

  2. Bagaimana menangani fragmentasi kolom ID auto_increment di MySQL

  3. TO_DAYS() Contoh – MySQL

  4. Pengaturan MySQL yang optimal untuk kueri yang mengirimkan data dalam jumlah besar?

  5. MySQL Tambahkan Kendala Unik