การ Login MySQL ด้วย User ที่แตกต่างจาก User ปัจจุบัน ทำได้ผ่าน Command Line ด้วยคำสั่ง mysql -u username -p
รูปแบบคำสั่ง
mysql -u your_username -p
-u- ระบุ username-p- ขอ password (จะ prompt ให้พิมพ์ hidden)- ไม่ต้องพิมพ์ password ต่อท้าย -p (ไม่ปลอดภัย)
ขั้นตอนสร้าง User ใหม่และ Login
1. สร้าง User ใหม่ใน MySQL
CREATE USER 'John'@'localhost' IDENTIFIED BY 'john123456';
2. ให้สิทธิ์ (Privileges)
GRANT ALL PRIVILEGES ON *.* TO 'John'@'localhost';
FLUSH PRIVILEGES;
3. ตรวจสอบ User ที่สร้าง
SELECT user FROM mysql.user;
ผลลัพธ์: จะเห็น 'John' ในรายการ
4. เปิด Command Prompt (Windows)
- กด Win + R
- พิมพ์
cmd→ Enter
5. เข้าไปในโฟลเดอร์ bin ของ MySQL
cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
6. Login ด้วย User ใหม่
mysql -u John -p
จะขึ้น prompt: Enter password: → พิมพ์ john123456 (ไม่แสดงบนหน้าจอ) → Enter
7. Login สำเร็จ
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 8.0.x MySQL Community Server
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
mysql>
ตัวเลือกการ Login เพิ่มเติม
| คำสั่ง | คำอธิบาย |
|---|---|
mysql -u root -p | Login เป็น root |
mysql -u user -p -h 192.168.1.100 | Login ไป Server อื่น (remote) |
mysql -u user -p -P 3307 | ระบุ Port ที่ไม่ใช่ 3306 |
mysql -u user -p db_name | Login และเลือก Database ทันที |
mysql -u user -p --protocol=tcp | บังคับใช้ TCP (ไม่ใช่ socket) |
การ Login แบบไม่ต้องพิมพ์รหัสผ่าน (สำหรับ Script/Automation)
# ไฟล์ .my.cnf ใน home directory
[client]
user = john
password = john123456
# แล้วรันแค่
mysql
คำเตือน: การเก็บ password ในไฟล์ต้องระวังสิทธิ์ไฟล์ (chmod 600 .my.cnf)
Switch User ภายใน MySQL Client
ไม่สามารถ switch user ได้ภายใน session ต้องออกมาและ login ใหม่ หรือใช้:
-- ไม่รองรับโดยตรง ต้อง reconnect
\q -- quit
mysql -u other_user -p