Từ các nhận xét, có vẻ như local_listener
mặc định tham số có thể đang cố gắng sử dụng IP động từ bộ điều hợp mạng mới của bạn, vì vậy nó không sử dụng cùng một địa chỉ mà người nghe đang sử dụng. Cách đơn giản nhất để khắc phục điều này có lẽ là đặt thông số đó theo cách thủ công:
alter system set local_listener = '(ADDRESS=(PROTOCOL=TCP)(HOST=172.17.26.7)(PORT=1521))' scope=memory;
alter system register;
Hoặc tôi nghĩ bạn có thể sử dụng phiên bản ngắn hơn, nhưng tôi không thể xác minh điều đó ngay bây giờ:
alter system set local_listener = '172.17.26.7:1521' scope=memory;
alter system register;
Nếu điều đó hoạt động - tức là, lsnrctl services
bây giờ hiển thị orcl
- và bạn hài lòng với nó, hãy thay đổi memory
thành both
và thực thi lại để nó vẫn tồn tại trong lần khởi động lại DB tiếp theo.
Một phiên bản khác của điều này là xác định trình nghe trong tnsnames.ora
, và sau đó sử dụng bí danh đó cho local_listener
giá trị; điều đó có thể giúp bạn thực hiện thay đổi dễ dàng hơn nếu IP tĩnh đã từng thay đổi, vì bạn chỉ cần thay đổi listener.ora
và tnsnames.ora
(và tất cả các khách hàng của bạn, tất nhiên), bạn sẽ không phải sửa đổi tham số DB trực tiếp. Điều đó có lẽ chỉ hữu ích nếu bạn có những người khác nhau quản lý DB và các tệp đó, điều này không có khả năng xảy ra; nhưng có thể gọn gàng hơn một chút.