पृथà¥?वी पर सà¥?थित à¤à¤¯à¤¾à¤¨à¤• नरक मंदिर | Amazing H
สารบัญ:
คุณเคยต้องการรายชื่อผู้ใช้ทั้งหมดในเซิร์ฟเวอร์ MySQL ของคุณหรือไม่? มีคำสั่งเพื่อแสดงฐานข้อมูลและตาราง แต่ไม่มีคำสั่ง MySQL
show users
บทช่วยสอนนี้อธิบายวิธีการแสดงรายการบัญชีผู้ใช้ทั้งหมดในเซิร์ฟเวอร์ฐานข้อมูล MySQL ผ่านบรรทัดคำสั่ง นอกจากนี้เราจะแสดงให้คุณเห็นว่าผู้ใช้รายใดที่มีสิทธิ์เข้าถึงฐานข้อมูลที่กำหนด
ก่อนที่คุณจะเริ่ม
เราสมมติว่าคุณได้ติดตั้งเซิร์ฟเวอร์ MySQL หรือ MariaDB ไว้ในระบบของคุณแล้ว
คำสั่งทั้งหมดจะถูกดำเนินการภายใน MySQL shell ในฐานะผู้ใช้รูท ในการเข้าถึง MySQL shell ให้พิมพ์คำสั่งต่อไปนี้และป้อนรหัสผ่านผู้ใช้รูท MySQL ของคุณเมื่อได้รับแจ้ง:
mysql -u root -p
หากคุณลืมรหัสผ่านรูทของ MySQL คุณสามารถรีเซ็ตได้โดยทำตามคำแนะนำเหล่านี้
แสดงผู้ใช้งาน MySQL ทั้งหมด
MySQL จัดเก็บข้อมูลเกี่ยวกับผู้ใช้ในตารางชื่อ
user
ในฐานข้อมูล
mysql
ในการรับรายการบัญชีผู้ใช้ MySQL ทั้งหมดให้ใช้คำสั่ง
SELECT
เพื่อดึงข้อมูลแถวทั้งหมดจากตาราง
mysql.users
:
SELECT User, Host FROM mysql.user;
ผลลัพธ์ควรมีลักษณะคล้ายกับด้านล่าง:
+------------------+-----------+ | user | host | +------------------+-----------+ | root | localhost | | luke | % | | yoda | % | | jabba | 10.10.0.6 | | jabba | 10.10.0.9 | | chewbacca | localhost | | leia | localhost | | han | localhost | +------------------+-----------+ 8 rows in set (0.00 sec)
คำสั่งด้านบนแสดงเพียงสองคอลัมน์จากตาราง
mysql.user
(
User
และ
Host
), ตารางนี้มีมากกว่า 40 คอลัมน์เช่น
Password
,
Select_priv
,
Update_priv
ฯลฯ
ใช้
desc mysql.user;
คำสั่งเพื่อแสดงข้อมูลเกี่ยวกับคอลัมน์ของตาราง เมื่อคุณทราบชื่อคอลัมน์แล้วคุณสามารถเรียกใช้แบบสอบถามกับข้อมูลที่เลือกได้
ตัวอย่างเช่นในการรับรายการบัญชีผู้ใช้ MySQL ทั้งหมดรวมถึงข้อมูลเกี่ยวกับรหัสผ่านและไม่ว่าจะใช้งานหรือหมดอายุคุณจะต้องใช้แบบสอบถามต่อไปนี้:
SELECT User, Host, Password, password_expired FROM mysql.user;
+----------------+-----------+-------------------------------------------+------------------+ | User | Host | Password | password_expired | +----------------+-----------+-------------------------------------------+------------------+ | root | localhost | | N | | luke | % | *ADC3B5B27617732CD6320A2DA976258E149A7EC8 | N | | yoda | % | *9550E004046348198A143A115550E1262209FB6F | N | | jabba | 10.10.0.6 | *F91C86B486B945C083B61A05FF6E197560D187EC | Y | | jabba | 10.10.0.9 | | Y | | chewbacca | localhost | *17F2B1E48029294841AD66772BEBB7E6E6A005AF | N | | leia | localhost | *74409C8DB55AC1A6829D801915981C46EDBFC64A | N | | han | localhost | *7B3022FCAEC3534CE67C68322D8AF0C240D95745 | N | +----------------+-----------+-------------------------------------------+------------------+ 8 rows in set (0.00 sec)
แสดงผู้ใช้ที่สามารถเข้าถึงฐานข้อมูลเฉพาะได้
ข้อมูลเกี่ยวกับสิทธิ์ระดับฐานข้อมูลจะถูกเก็บไว้ในตาราง
mysql.db
คุณสามารถสืบค้นตารางเพื่อค้นหาว่าผู้ใช้รายใดมีสิทธิ์เข้าถึงฐานข้อมูลที่ระบุและระดับสิทธิ์
ตัวอย่างเช่นในการรับรายการผู้ใช้ทั้งหมดที่มีการเข้าถึงระดับฐานข้อมูลชื่อ
db_name
คุณจะต้องใช้แบบสอบถามต่อไปนี้:
SELECT * FROM mysql.db WHERE Db = 'db_name'\G;
*************************** 1. row *************************** Host: localhost Db: db_name User: db_user Select_priv: Y Insert_priv: Y Update_priv: Y Delete_priv: Y Create_priv: Y Drop_priv: Y Grant_priv: N References_priv: Y Index_priv: Y Alter_priv: Y Create_tmp_table_priv: Y Lock_tables_priv: Y Create_view_priv: Y Show_view_priv: Y Create_routine_priv: Y Alter_routine_priv: Y Execute_priv: Y Event_priv: Y Trigger_priv: Y 1 row in set (0.00 sec)
ในการดึงข้อมูลเกี่ยวกับบัญชีผู้ใช้ที่สามารถเข้าถึงฐานข้อมูลที่กำหนดได้โดยไม่ต้องแสดงสิทธิ์ใช้:
SELECT db, host, user FROM mysql.db WHERE db = 'db_name'
+---------+-----------+---------+ | db | host | user | +---------+-----------+---------+ | db_name | localhost | db_user | +---------+-----------+---------+
แบบสอบถามต่อไปนี้จะแสดงข้อมูลเกี่ยวกับฐานข้อมูลทั้งหมดและผู้ใช้ที่เกี่ยวข้อง:
SELECT db, host, user FROM mysql.db WHERE db = 'db_name'
+------------------+-----------+-----------+ | db | host | user | +------------------+-----------+-----------+ | db_name | localhost | db_user | | ghost_production | localhost | chewbacca | | blog_db | localhost | leia | | linuxize | localhost | han | +------------------+-----------+-----------+
ข้อสรุป
ในบทช่วยสอนนี้เราได้แสดงวิธีรับรายการผู้ใช้ MySQL ทั้งหมดและค้นหาว่าผู้ใช้รายใดที่สามารถเข้าถึงฐานข้อมูลเฉพาะ
อย่าลังเลที่จะแสดงความคิดเห็นหากคุณมีคำถามใด ๆ
mysql mariadbSun's Mickos: ฉันสบายดีกับ MySQL ของ MySQL 5.1 Rant

ผู้บริหารอาวุโสของ Sun ในวันจันทร์ลดลงความขัดแย้งกับสาธารณะล่าสุด วิพากษ์วิจารณ์โดยผู้ร่วมก่อตั้ง MySQL Michael Johnson "Monty" Widenius ซึ่งเป็นนักพัฒนาซอฟต์แวร์ฐานข้อมูลแบบโอเพนซอร์สของ MySQL ได้ปล่อย MySQL 5.1 เวอร์ชั่นล่าสุดของ Sun Microsystems ด้วยโพสต์โพสต์โพสต์ trashing ของเขาเมื่อวันที่ 29 พฤศจิกายนที่ผ่านมา Widenius เตือนให้ผู้ใช้ "ระมัดระวังเกี่ยวกับ MySQL 5.1" เพราะ "มีข้อผิดพลาดร้ายแรงที่รู้จักและไม่รู้จักหลายอย่างในคุณสมบัติใหม่ ๆ ที่ยังไม่ได้กล่าวถึง ความเห็นของ Widenius เพิ่มขึ้นอ
MySQL เปิดตัว MySQL Update เป็น Oracle Deal Looms

MySQL 5.4 เพิ่มการปรับปรุงขีดความสามารถให้กับฐานข้อมูล open-source
วิธีการแสดง Command Line ใน Windows 10 Task Manager

Task Manager ใน Windows 10 v1709 ช่วยให้คุณสามารถแสดง Command Line ได้ ถ้าคุณต้องการแสดงเส้นทางแบบเต็มของกระบวนการทำงาน