অফিসিয়াল ওরাকল সমর্থন থেকে কয়েক ঘন্টা ভুল নির্দেশনার পরে, আমি নিজেই এটিকে ঘুঘু করে ফেলেছি এবং ঠিক করেছি। অন্য কারও যদি সমস্যা হয় তবে আমি এখানে এটি দলিল করছি।
এর যে কোন একটি করতে, আপনাকে অবশ্যই ওরাকল ব্যবহারকারী হতে হবে:
$ su - oracle
পদক্ষেপ 1: আপনার সতর্কতা লগটি দেখতে হবে। এটি প্রত্যাশা অনুসারে / var / লগে নেই। আপনাকে একটি ওরাকল লগ রিডিং প্রোগ্রামটি চালাতে হবে:
$ adrci
ADRCI: Release 11.2.0.1.0 - Production on Wed Sep 11 18:27:56 2013
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
ADR base = "/u01/app/oracle"
adrci>
ADR বেস লক্ষ্য করুন। এটি ইনস্টল করা হয় না। আপনাকে বাড়িগুলি দেখতে হবে যাতে আপনি যেটি ব্যবহার করেন তার সাথে আপনি সংযোগ করতে পারেন।
adrci> show homes
ADR Homes:
diag/rdbms/cci/CCI
diag/tnslsnr/cci/listener
diag/tnslsnr/cci/start
diag/tnslsnr/cci/reload
সিসিআই হল বাড়ি। সেট করুন।
adrci> set home diag/rdbms/cci/CCI
adrci>
এখন, আপনি সতর্কতা লগগুলি দেখতে পারেন। এটি খুব ভাল হবে যদি তারা / ভার্ / লগ এ থাকে তবে আপনি সহজেই লগগুলি পার্স করতে পারবেন। এই ইন্টারফেসটি সবেমাত্র চাওয়া বন্ধ করুন deal কমপক্ষে আপনি লেজ দিতে পারেন (এবং আমি আশা করি আপনার কাছে একটি স্ক্রোলব্যাক বাফার রয়েছে):
adrci> show alert -tail 100
আপনি ত্রুটিগুলি না দেখা পর্যন্ত পিছনে স্ক্রোল করুন। আপনি প্রথম ত্রুটি চান। প্রথম ত্রুটির পরে কোনও ত্রুটি সম্ভবত প্রথম ত্রুটির কারণে ঘটছে। আমার ক্ষেত্রে, প্রথম ত্রুটিটি ছিল:
ORA-19815: WARNING: db_recovery_file_dest_size of 53687091200 bytes is 100.00% used, and has 0 remaining bytes available.
এটি লেনদেনের কারণে ঘটে। ওরাকল ব্যবহারের জন্য ডিজাইন করা হয়নি। আপনি যদি এতে প্রচুর ডেটা ঠেলাঠেলি করেন তবে এটি লেনদেনের লগগুলি সংরক্ষণ করে। যারা পুনরুদ্ধার ফাইল অঞ্চলে যায়। একবার এটি পূর্ণ হয়ে যায় (এই ক্ষেত্রে 50GB পূর্ণ)। তারপরে, ওরাকল সবে মারা যায়। ডিজাইন অনুসারে, যদি কিছু গণ্ডগোল করে তবে ওরাকল বন্ধ করে সাড়া দেবে।
দুটি সমাধান রয়েছে, যথাযথ এক এবং দ্রুত এবং নোংরা একটি। দ্রুত এবং নোংরা একটি হ'ল ডিবি_রেকোভারি_ফাইলে_ডাস্ট_সাইজ বাড়ানো। প্রথমে অ্যাডক্রি প্রস্থান করুন।
adrci> exit
এখন, ডাটাবেসটি না খোলার মাধ্যমে স্ক্যালপ্লাসে প্রবেশ করুন, কেবল এটি মাউন্ট করা (আপনি এটি ডাটাবেস মাউন্ট না করেই করতে সক্ষম হতে পারেন, তবে আমি এটি যেভাবেই মাউন্ট করব)।
$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Wed Sep 11 18:40:25 2013
Copyright (c) 1982, 2009, Oracle. All rights reserved.
SQL> connect / as sysdba
Connected.
SQL> startup mount
এখন, আপনি আমার বর্তমান ডিবি_ডেকোভারি_ফিল_ডাস্ট_সাইজ বাড়াতে পারেন, আমার ক্ষেত্রে 75 জি পর্যন্ত বাড়িয়ে তুলতে পারেন:
SQL> alter system set db_recovery_file_dest_size = 75G scope=both
এখন, আপনি আবার শাটডাউন এবং আবার শুরু করতে পারেন এবং সেই আগের ত্রুটিটি চলে যাওয়া উচিত।
সঠিক ফিক্সটি হ'ল পুনরুদ্ধার ফাইলগুলি থেকে মুক্তি পাওয়া। আপনি এসএমএলপিএলএস বা এডিআরসিআই নয়, আরএমএন ব্যবহার করে তা করেন।
$ rman
Recovery Manager: Release 11.2.0.1.0 - Production on Wed Sep 11 18:45:11 2013
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
RMAN> backup archivelog all delete input;
যদি আপনি পেয়ে থাকেন তবে ন্যায়বিচারের পরিবর্তে RMAN-06171: not connected to target database
ব্যবহার rman target /
করার চেষ্টা করুনrman
দীর্ঘ সময় অপেক্ষা করুন এবং আপনার সংরক্ষণাগারটিভ (যেটি সমস্ত স্থান ব্যবহার করছিল) চলে যাবে। সুতরাং, আপনি আপনার ডাটাবেসটি শাটডাউন / স্টার্টআপ করতে পারেন এবং ব্যবসায় ফিরে আসতে পারেন।
ALTER DATABASE OPEN
এবং তার পরে ত্রুটিগুলি থেকে পোস্ট অংশ ।