منبع اصلی نوشتار زیر در این لینک قرار دارد

Password File در اوراکل چیست

چرا وقتی می خواهیم یک پایگاه داده را startup کنیم در حالیکه پایگاه داده shutdown است نمی توانیم با کاربر SYSTEM وارد شویم ولی با SYS می توانیم وارد شویم. جز اینکه تنها کاربر با مجوز SYSDBA می تواند پایگاه داده را startup یا shutdown کند (مانند SYS) ولی توجه کنید که پایگاه داده shutdown است و نمی توانیم اصولا وارد شویم. دلیل اینکه با SYS می توانیم وارد شویم اینکه نام و پسورد آن در خود پایگاه داده ذخیره نشده  بلکه در خارج از پایگاه داده و در یک فایل ثبت شده است و این بر خلاف بقیه کاربران هستند که در خود پایگاه داده و در Data Dictionary ها ذخیره شده اند.

مسیر پیش فرض این فایل در دایرکتوری dbs در زیر دایرکتوری ORACLE_HOME$ است.

cd $ORACLE_HOME/dbs

ls orapwdorcl

قسمت قرمز رنگ بالا مربوط به نام پایگاه داده است و بر اساس هر پایگاه داده نامی متفاوت خواهد داست. و همچنین در سیستم عامل ویندوز در مسیر زیر قرار دارد.

cd %ORACLE_HOME%\database

dir

کاربران درون این فایل دارای مجوز SYSDBA یا SYSOPER هستند. با پرس و جوی زیر می توان فهرستی از این کاربران را پیدا کرد.

;select * from v$pwfile_users

USERNAME               SYSDB SYSOP SYSAS
—————————— —– —– —–
SYS                   TRUE  TRUE  FALSE

خروجی بالا نشان می دهد که کاربر SYS دارای مجوز های SYSDBA و SYSOP است. با دستور های زیر کاربری را ساخته و مجوز های لازم را می دهیم.

;create user sysusr identified by password

;grant sysdba, sysoper to sysusr

اگر خطای زیر نشان داده شد به این خاطر است که هیچ کاربری جز کاربرانی که مجوز SYSDBA مانند SYS نمی توانند به کس دیگری مجوز های SYSDBA یا SYSOPER را اعطا یا GRANT کنند.

ORA-01031: insufficient privileges

به هر حال اگر با کاربر SYS اعطای مجوز را انجام دادید آنگاه نام کاربر sysusr نیز به فهرست جدول v$pwdfile_users اضافه خواهد شد.

;select * from v$pwfile_users

USERNAME               SYSDB SYSOP SYSAS
—————————— —– —– —–
SYS                   TRUE  TRUE  FALSE
SYSUSR                   TRUE  TRUE  FALSE

دستور orapwd

اگر فایل پاک شود با استفاده از این دستور می توان آنرا ایجاد نمود. همانطور که گفته شد محل پیش فرض وجود دارد و با اجرای دستور فوق فایل در همان محل پیش فرض ایجاد خواهد شد. شکل کلی آن بصورت زیر است. n تعداد حداکثر کاربرانی که می توانند در فایل قرار گیرند را نشان می دهد.

orapwd file=password_file_name password=the_secret_password

orapwd file=password_file_name password=the_secret_password entries=n

برای خواندن راهنمای دستور از دستور orapwd –help استفاده کنید.



برچسب ها : , , , , ,

به سیاره لینوکس امتیاز دهید

به اين صفحه امتياز دهيد