Ở bài trước chúng ta đã biết cách tính toán và cấu hình các tham số shared memory trên Linux. Trong 1 số trường hợp cấu hình không chính xác, hoặc hệ thống quản lý memory không tốt, ta sẽ có thể gặp các lỗi dưới đây.

 

ORA-27102: out of memory

 

Lỗi này xảy ra khi chúng ta cấu hình không đủ shared memory cho Oracle sử dụng. VD tham số SGA_TARGET mình đặt là 1GB, tuy nhiên shared memory chỉ để 900MB:

 

 

Khi đó ta thử start database sẽ gặp lỗi

 

 

Xử lý: tính toán lại shmall đủ cho Oracle instance, hoặc giảm SGA xuống

 

ORA-27123:unable to attach to shared memory segment

 

Ta có thể gặp lỗi này khi startup instance. Nếu lỗi đi kèm tiếp theo là 

 

Ta kiểm tra lại quyền của file $ORACLE_HOME/bin/oracle có đúng là -rwsr-s–x không

 

 

Nếu không đúng phải chỉnh lại bằng lệnh chmod

 

 

Nếu lỗi đi kèm tiếp theo là

 

Thường là do Oracle instance bị crash, và hệ thống chưa giải phóng được shared memory segments cũ. Ta có thể sử dụng công cụ sysresv của Oracle hay lệnh ipcs của Linux để dọn dẹp shared memory cũ trên hệ thống. Sau đó có thể start lại instance.

 

ORA-27101: shared memory realm does not exist

 

Nguyên nhân thứ nhất: Oracle instance chưa start -> chưa có shared memory realm là đúng rồi. Kiểm tra và start lên.

 

Nguyên nhân thứ hai: do thiết lập sai biến môi trường.

 

 

Ta set biến môi trường ORACLE_SID sai, dẫn đến việc client cố gắng connect vào 1 instance không tồn tại. Chỉ cần set lại đúng ORACLE_SID là có thể connect bình thường.