13.1 recovery password file
Password file ( Linux for example) in the $ ORACLE_HOME / dbs directory, file name prefix is orapw, followed by the database instance name.
[oracle@DSI backup]$ cd /u01/app/oracle/product/11.2.0/db_1/dbs/
-rw-r----- 1 oracle oinstall 1536 Jul 25 10:15 orapworcl
The file permissions only for two services: SYSDBA and SYSOPER
Missing or corrupt password file results in the need to access the file related operations have failed, for instance, use has SYSDBA and SYSOPER remote login privileges will fail, the impact oracle management console Database Console , Grid Control
$ sqlplus / as sysdba $ sqlplus sys/xxx@orcl as sysdba ERROR ORA-01031: insufficient privileges SQL> grant sysdba to hr ERROR ORA-01994: GRANT failed: password file missing or disabled
If the initialization parameters remote_login_passwordfile value NONE, behavior characteristics with exactly the same password file database corruption.
Recovery password file is very simple, use a command to rebuild the password file orapwd
$ orapwd file=$ORACLE_HOME/dbs/orapworcl password=oracle force=y
--force argument to overwrite the existing password file
Parameters ignorecase the SYS password is set to 11g previous case-insensitive
Ordinary user's password is case-sensitive by the parameter sec_case_sensitive_logon.
13.2 restore parameter files
No parameter file db not start to nomount stage, when there is no backup parameter file is damaged, dba through parameter file pfile reconstruction form.
First check the alarm log, all non-default parameters are recorded in the inside, which is to restore the most accurate method parameter file
[oracle@DSI dbs]$ cd /u01/app/oracle/diag/rdbms/orcl/orcl/trace/ [oracle@DSI trace]$ tail -n 200 alert_orcl.log Using parameter settings in server-side spfile /u01/app/oracle/product/11.2.0/db_1/dbs/spfileorcl.ora System parameters with non-default values: processes = 150 memory_target = 752M control_files = "/u01/app/oracle/oradata/orcl/control01.ctl" control_files = "/u01/app/oracle/fast_recovery_area/orcl/control02.ctl" db_block_size = 8192 compatible = "11.2.0.4.0" db_recovery_file_dest = "/u01/app/oracle/fast_recovery_area" db_recovery_file_dest_size= 4977M undo_tablespace = "UNDOTBS1" remote_login_passwordfile= "EXCLUSIVE" db_domain = "" dispatchers = "(PROTOCOL=TCP) (SERVICE=orclXDB)" audit_file_dest = "/u01/app/oracle/admin/orcl/adump" audit_trail = "DB" db_name = "orcl" open_cursors = 300 diagnostic_dest = "/u01/app/oracle"
Even if the alarm logs are gone, dba should be understood that those parameters must be set
11g with the help of automatic memory management and new diagnostic log path management, you must specify the parameters
:DB_NAME\CONTROL_FILES
If you do not db_name parameter, instances can not start
DB_NAME \ DB_BLOCK_SIZE \ COMPATIBLE can be made in the file header
Do not set an error or an error
ORA-01103
ORA-00058
Parameters compatible features that can not be reduced only to increase, the default is 11.2.0
Parameters instance_name and service_name from environment variables the ORACLE_SID , file name and password tnsname.ora file back.
Parameters process \ open_cursors \ sessions can be considered a large number of settings,
Try not to set other parameters, generally use the default value will be able to open the database.
Can not open database to specific analysis.
If you find a problem with a parameter file in the database is running , you can use 11g new command " the Create pfile / SPFILE from Memory " from memory to create a pfile parameter file
SQL> create pfile='/tmp/initorcl.ora.memory' from memory; File created. [oracle@DSI trace]$ cat /tmp/initorcl.ora.memory # Oracle init.ora parameter file generated by instance orcl on 07/29/2019 15:20:17
Unless necessary, the following should be drawing a line starting implicit parameter deleted [ the Oracle DSI @ the trace ] $ grep - v ' ^ (_ | #) *. ' / Tmp / initorcl.ora.memory > / tmp / initorcl. ora.nohidden [ the Oracle DSI @ the trace ] $ CAT / tmp / initorcl.ora.nohidden
Note that if a window is automatically opened resource management plans, it found that the parameters resource_manager_plan should be deleted
So the next closed db after, then spfile create back
SQL> create spfile from pfile=’/tmp/initorcl.ora.nohidden’;
[oracle@DSI trace]$ grep -v '^(_|#).*' /tmp/initorcl.ora.memory # Oracle init.ora parameter file generated by instance orcl on 07/29/2019 15:20:17 __db_cache_size=320M __java_pool_size=4M __large_pool_size=8M __oracle_base='/u01/app/oracle' # ORACLE_BASE set from environment __pga_aggregate_target=288M __sga_target=464M __shared_io_pool_size=0 __shared_pool_size=120M __streams_pool_size=0 _aggregation_optimization_settings=0 _always_anti_join='CHOOSE' _always_semi_join='CHOOSE' _and_pruning_enabled=TRUE _b_tree_bitmap_plans=TRUE _bloom_filter_enabled=TRUE _bloom_folding_enabled=TRUE _bloom_pruning_enabled=TRUE _complex_view_merging=TRUE _compression_compatibility='11.2.0.4.0' _connect_by_use_union_all='TRUE' _convert_set_to_join=FALSE _cost_equality_semi_join=TRUE _cpu_to_io=0 _dimension_skip_null=TRUE _eliminate_common_subexpr=TRUE _enable_type_dep_selectivity=TRUE _fast_full_scan_enabled=TRUE _first_k_rows_dynamic_proration=TRUE _gby_hash_aggregation_enabled=TRUE _generalized_pruning_enabled=TRUE _globalindex_pnum_filter_enabled=TRUE _gs_anti_semi_join_allowed=TRUE _improved_outerjoin_card=TRUE _improved_row_length_enabled=TRUE _index_join_enabled=TRUE _ksb_restart_policy_times='0' _ksb_restart_policy_times='60' _ksb_restart_policy_times='120' _ksb_restart_policy_times='240' # internal update to set default _left_nested_loops_random=TRUE _local_communication_costing_enabled=TRUE _minimal_stats_aggregation=TRUE _mmv_query_rewrite_enabled=TRUE _new_initial_join_orders=TRUE _new_sort_cost_estimate=TRUE _nlj_batching_enabled=1 _optim_adjust_for_part_skews=TRUE _optim_enhance_nnull_detection=TRUE _optim_new_default_join_sel=TRUE _optim_peek_user_binds=TRUE _optimizer_adaptive_cursor_sharing=TRUE _optimizer_better_inlist_costing='ALL' _optimizer_cbqt_no_size_restriction=TRUE _optimizer_coalesce_subqueries=TRUE _optimizer_complex_pred_selectivity=TRUE _optimizer_compute_index_stats=TRUE _optimizer_connect_by_combine_sw=TRUE _optimizer_connect_by_cost_based=TRUE _optimizer_connect_by_elim_dups=TRUE _optimizer_correct_sq_selectivity=TRUE _optimizer_cost_based_transformation='LINEAR' _optimizer_cost_hjsmj_multimatch=TRUE _optimizer_cost_model='CHOOSE' _optimizer_dim_subq_join_sel=TRUE _optimizer_distinct_agg_transform=TRUE _optimizer_distinct_elimination=TRUE _optimizer_distinct_placement=TRUE _optimizer_eliminate_filtering_join=TRUE _optimizer_enable_density_improvements=TRUE _optimizer_enable_extended_stats=TRUE _optimizer_enable_table_lookup_by_nl=TRUE _optimizer_enhanced_filter_push=TRUE _optimizer_extend_jppd_view_types=TRUE _optimizer_extended_cursor_sharing='UDO' _optimizer_extended_cursor_sharing_rel='SIMPLE' _optimizer_extended_stats_usage_control=192 _optimizer_false_filter_pred_pullup=TRUE _optimizer_fast_access_pred_analysis=TRUE _optimizer_fast_pred_transitivity=TRUE _optimizer_filter_pred_pullup=TRUE _optimizer_fkr_index_cost_bias=10 _optimizer_full_outer_join_to_outer=TRUE _optimizer_group_by_placement=TRUE _optimizer_improve_selectivity=TRUE _optimizer_interleave_jppd=TRUE _optimizer_join_elimination_enabled=TRUE _optimizer_join_factorization=TRUE _optimizer_join_order_control=3 _optimizer_join_sel_sanity_check=TRUE _optimizer_max_permutations=2000 _optimizer_mode_force=TRUE _optimizer_multi_level_push_pred=TRUE _optimizer_native_full_outer_join='FORCE' _optimizer_new_join_card_computation=TRUE _optimizer_null_aware_antijoin=TRUE _optimizer_or_expansion='DEPTH' _optimizer_order_by_elimination_enabled=TRUE _optimizer_outer_join_to_inner=TRUE _optimizer_outer_to_anti_enabled=TRUE _optimizer_push_down_distinct=0 _optimizer_push_pred_cost_based=TRUE _optimizer_rownum_bind_default=10 _optimizer_rownum_pred_based_fkr=TRUE _optimizer_skip_scan_enabled=TRUE _optimizer_sortmerge_join_inequality=TRUE _optimizer_squ_bottomup=TRUE _optimizer_star_tran_in_with_clause=TRUE _optimizer_system_stats_usage=TRUE _optimizer_table_expansion=TRUE _optimizer_transitivity_retain=TRUE _optimizer_try_st_before_jppd=TRUE _optimizer_undo_cost_change='11.2.0.4' _optimizer_unnest_corr_set_subq=TRUE _optimizer_unnest_disjunctive_subq=TRUE _optimizer_use_cbqt_star_transformation=TRUE _optimizer_use_feedback=TRUE _or_expand_nvl_predicate=TRUE _ordered_nested_loop=TRUE _parallel_broadcast_enabled=TRUE _partition_view_enabled=TRUE _pivot_implementation_method='CHOOSE' _pre_rewrite_push_pred=TRUE _pred_move_around=TRUE _push_join_predicate=TRUE _push_join_union_view=TRUE _push_join_union_view2=TRUE _px_minus_intersect=TRUE _px_partition_scan_enabled=TRUE _px_pwg_enabled=TRUE _px_ual_serial_input=TRUE _query_rewrite_setopgrw_enable=TRUE _remove_aggr_subquery=TRUE _replace_virtual_columns=TRUE _right_outer_hash_enable=TRUE _selfjoin_mv_duplicates=TRUE _sql_model_unfold_forloops='RUN_TIME' _sqltune_category_parsed='DEFAULT' # parsed sqltune_category _subquery_pruning_enabled=TRUE _subquery_pruning_mv_enabled=FALSE _table_scan_cost_plus_one=TRUE _union_rewrite_for_gs='YES_GSET_MVS' _unnest_subquery=TRUE _use_column_stats_for_function=TRUE audit_file_dest='/u01/app/oracle/admin/orcl/adump' audit_trail='DB' background_dump_dest='/u01/app/oracle/diag/rdbms/orcl/orcl/trace' #Deprecate parameter compatible='11.2.0.4.0' control_files='/u01/app/oracle/oradata/orcl/control01.ctl' control_files='/u01/app/oracle/fast_recovery_area/orcl/control02.ctl' core_dump_dest='/u01/app/oracle/diag/rdbms/orcl/orcl/cdump' db_block_size=8192 db_domain='' db_name='orcl' db_recovery_file_dest='/u01/app/oracle/fast_recovery_area' db_recovery_file_dest_size=4977M diagnostic_dest='/u01/app/oracle' dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)' log_buffer=6479872 # log buffer update memory_target=752M open_cursors=300 optimizer_dynamic_sampling=2 optimizer_mode='ALL_ROWS' plsql_warnings='DISABLE:ALL' # PL/SQL warnings at init.ora processes=150 query_rewrite_enabled='TRUE' remote_login_passwordfile='EXCLUSIVE' result_cache_max_size=1952K skip_unusable_indexes=TRUE undo_tablespace='UNDOTBS1' user_dump_dest='/u01/app/oracle/diag/rdbms/orcl/orcl/trace' #Deprecate parameter