Logo
Published on
เผยแพร่เมื่อ(แก้ไขเมื่อ 19 วันที่ผ่านมา)

วิธีปลดล็อคผู้ใช้ (Unlock User) ใน Oracle Database

unlock-user-oracle

บทความนี้จัดทำขึ้นเพื่อแชร์ประสบการณ์และเป็นแนวทางสำหรับผู้ใช้งาน Oracle Database ที่อาจเจอปัญหา “บัญชีผู้ใช้ถูกล็อค” (User Account Locked)

เนื่องจากตัวผมเองเจอปัญหานี้ค่อนข้างบ่อยเพราะเป็นคนขี้ลืมเวลาเปลี่ยนรหัสผ่าน แต่ดันลืมหยุดการทำงานของแอปพลิเคชันเลยส่งผลให้แอปพลิเคชันพยายามเชื่อมต่อซ้ำ ๆ ด้วยรหัสผ่านเดิม จนทำให้ user เกิดการล็อคโดยอัตโนมัติ

กรณีนี้เกิดขึ้นได้หลายสาเหตุ

  • ใส่รหัสผ่านผิดหลายครั้งติดต่อกัน
  • บัญชีหมดอายุ
  • นโยบายความปลอดภัยของระบบที่กำหนดไว้

หากคุณเคยพบข้อความแจ้งเตือนว่า ORA-28000: the account is locked แสดงว่ากำลังเจอปัญหานี้อยู่

บทความนี้จะช่วยให้สามารถปลดล็อคบัญชีผู้ใช้ได้ด้วยตัวเอง และเข้าใจสาเหตุเพื่อป้องกันไม่ให้เกิดซ้ำในอนาคต 😂


🔓 ขั้นตอนการปลดล็อคผู้ใช้ใน Oracle

สิ่งที่ต้องมี

  • สิทธิ์เป็น DBA (เช่น SYS, SYSTEM หรือผู้ใช้ที่มีสิทธิ์ ALTER USER)
  • Access เข้า SQL*Plus, DBeaver, Navicat หรือ Oracle Client ที่สามารถรันคำสั่ง SQL ได้
  1. เชื่อมต่อฐานข้อมูลในฐานะผู้ใช้ที่มีสิทธิ์
sqlplus sys as sysdba
#หรือ
sqlplus system/password@your_db
  1. ตรวจสอบสถานะผู้ใช้
SELECT username, account_status FROM dba_users WHERE username = 'USERNAME';

ค่าที่อาจเจอ เช่น

  • LOCKED
  • EXPIRED & LOCKED
  • OPEN
  1. ปลดล็อคผู้ใช้
ALTER USER USERNAME ACCOUNT UNLOCK;
-- ตัวอย่าง
ALTER USER DEVELOPMENT ACCOUNT UNLOCK;

สรุป

การปลดล็อค User Oracle ง่ายกว่าที่คิดเพียงใช้คำสั่ง ALTER USER ... ACCOUNT UNLOCK ก็สามารถปลดล็อคได้แล้ว

avatar
Username
@Kongkiat
Bio
เป็นนักพัฒนาเว็บไซต์โดยใช้ React เป็นหลัก และมีความรู้ด้าน Backend ด้วย Spring boot มุ่งเน้นการพัฒนาแอปพลิเคชันที่ดูแลรักษาง่าย และมีประสิทธิภาพ

Comment