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

Masuk ke akun MySQL dengan unix_socket

Untuk terhubung ke server MySQL jarak jauh, baik secara langsung atau melalui terowongan SSH, Anda tidak dapat menggunakan unix_socket plugin otentikasi yang memerlukan akses lokal ke file soket unix pada sistem operasi Server DB.

unix_socket plugin diimplementasikan menggunakan jenis file khusus (unix socket) yang merupakan bentuk komunikasi antar-proses (IPC) dalam sistem *nix. Ini memungkinkan klien mysql CLI Anda untuk berbicara dengan DB dan memerlukan akses lokal ke file soket (yaitu:/tmp/mysql.sock ). Saat Anda terhubung ke soket, unix_socket plugin (sisi server) akan membuat uid pengguna terhubung ke soket (yaitu:pengguna Anda) dan secara otomatis akan mengautentikasi Anda tanpa memerlukan kata sandi.

Kemungkinan solusi:

Jika Anda terhubung ke Mesin B dengan pengguna non-root, Anda perlu membuat pengguna DB dengan nama yang sama dengan nama akun pengguna sistem operasi non-root Anda.

GRANT ALL PRIVILEGES ON *.* TO 'youruser'@'localhost' IDENTIFIED VIA unix_socket;

Sekarang Anda dapat terhubung ke mysql menggunakan akun pengguna Anda dan klien mysql CLI hanya dengan menjalankan:

youruser:~$ mysql

Jika Anda ingin terhubung ke DB dengan pengguna root, maka Anda memerlukan akses ke akun root atau kebijakan sudo yang terkait dengan pengguna Anda untuk menjalankan klien mysql.

youruser:~$ sudo mysql

Anda jelas dapat mengaktifkan akses jaringan terotentikasi reguler ke akun root DB Anda. Hal ini dapat menyebabkan masalah keamanan sehingga lebih baik membatasinya pada localhost:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'xxx' WITH GRANT OPTION;

Sekarang Anda dapat login dari akun sistem operasi lokal mana pun jika Anda dapat mengotentikasi login Anda:

youruser:~$ mysql -u root -p



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menyimpan Sesi di Tabel DB Tidak Berfungsi (menggunakan Zend_Session_SaveHandler_DbTable)

  2. Pilih semua data termasuk tabel lain meskipun null

  3. Cara update lupapassword dengan mengirim email di mysql php

  4. Labu, tidak semua argumen dikonversi selama pemformatan string

  5. Mysqli bergabung dengan tabel dari 2 database yang berbeda