本篇内容介绍了“Oracle字符集从GBK升级到Utf8的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1、导出前准备(单实例单监听) a.关闭zabbix 监控

配置--主机--primary-new-qpdb

b.停应用停监听杀会话

lsnrctlstopLISTENER杀会话:

exportORACLE_SID=qpprips-ef|grep$ORACLE_SID|grep-vORA_|grepLOCAL=NO|awk'{print$2}'|xargskill-9c.确保无用户会话、无事务:

setlinesize1000setpagesize3000coleventfora30colstatusfora10colblksesfor99999colusernamefora14colmodulefora45colprogramfora40colmachinefora25colstatefora20colcmdfora23colsql_idfora20selects.inst_id,s.sid,s.event,s.state,s.status,s.last_call_etlcet,s.sql_id,s.username,c.command_namecmd,s.module,s.program,s.machinefromgv$sessions,gv$sqlcommandcwheres.type='USER'ands.inst_id=c.inst_idands.command=c.command_typeorderbys.username,s.sql_id,s.module,s.program;select'altersystemdisconnectsession'''||sid||','||serial#||'''immediate;'fromv$sessionwheretype='USER';altersystemdisconnectsession'2375,38626'immediate;selectinst_id,START_TIME,(sysdate-to_date(START_TIME,'mm/dd/yyhh34:mi:ss'))*24eslaped_hours,USED_UBLK*8/1024MBfromgv$transactionorderby4,3;d.主库切几次日志,并确保备库无延迟,设置主库远程归档路径为defer主库:

altersystemswitchlogfile;备库:

colnamefora20colvaluefora20colunitfora30colTIME_COMPUTEDfora20colDATUM_TIMEfora20setlinesize1000select*fromv$dataguard_stats;主库:

altersystemsetlog_archive_dest_state_2='defer'scope=both;e.备库停止应用,并关闭

alterdatabaserecovermanagedstandbydatabasecancel;shutdownimmmediate;f.导出数据

viexp_qp.sh#!/bin/bash./home/oracle/.bash_profileexportORACLE_SID=qppriexportNLS_LANG=American_America.AL32UTF8#####variableSCHES#######SCHES="CONFIG,DEVQ_DP,ACCOUNT,BOPS,CONFIGSVR,MESSAGE,OPENFIRE,MON,IDEXCHANGE,QPWEB,QP_MAPI_BASE,QP_MJCORE_BASE,QP_CORE_BASE,QP_CRM_BASE,CIF_BASE,IDEXCHANGE_BASE,GOLD_COIN_CORE_BASE,SS_CORE_BASE,SS_SYN_OUT_BASE,BENCH_CAPTCHA_BASE,CONFIG_SERVER_DISTRIB_BASE,DEV_BANXIA,BOPS_BASE,BOPS_COMMON_BASE,OA_FRONT_BASE,KEY_CORE_BASE,BOPS_QP_BASE"expdp\'/assysdba\'schemas=${SCHES}directory=EXPDP_DATAdumpfile=qpasdwsx_%U.dmpparallel=4logfile=expdp_qp.logcompression=allg.查出存在直方图统计信息的列:

exportNLS_LANG=American_America.AL32UTF8vizft.sqlsetechooffsettermoutoffsetlinesize1000colcmdfora160setpagesize0setfeedbackoffsetheadingoffsettrimoutonsettrimspoolonspool'/home/oracle/cy/stats.sql'select'select'||column_name||'from'||owner||'.'||table_name||'where'||column_name||'isnotnulland1=2;'cmdfromdba_tab_col_statisticswherehistogram<>'NONE'andtable_namenotlike'BIN$%'andownerin('CONFIG','DEVQ_DP','ACCOUNT','BOPS','CONFIGSVR','MESSAGE','OPENFIRE','MON','IDEXCHANGE','DW_QPDB','QPWEB','QP_MAPI_BASE','QP_MJCORE_BASE','QP_CORE_BASE','QP_CRM_BASE','CIF_BASE','IDEXCHANGE_BASE','GOLD_COIN_CORE_BASE','SS_CORE_BASE','SS_SYN_OUT_BASE','BENCH_CAPTCHA_BASE','CONFIG_SERVER_DISTRIB_BASE','DW_USER','DEV_BANXIA','BOPS_BASE','BOPS_COMMON_BASE','OA_FRONT_BASE','KEY_CORE_BASE','BOPS_QP_BASE');spooloffsetfeedbackonsetheadingonsettermoutonsetechoonh.删除数据

viduser.sqldropuserCONFIGcascade;dropuserDEVQ_DPcascade;dropuserACCOUNTcascade;dropuserBOPScascade;dropuserCONFIGSVRcascade;dropuserMESSAGEcascade;dropuserOPENFIREcascade;dropuserMONcascade;dropuserIDEXCHANGEcascade;dropuserDW_QPDBcascade;dropuserQPWEBcascade;dropuserQP_MAPI_BASEcascade;dropuserQP_MJCORE_BASEcascade;dropuserQP_CORE_BASEcascade;dropuserQP_CRM_BASEcascade;dropuserCIF_BASEcascade;dropuserIDEXCHANGE_BASEcascade;dropuserGOLD_COIN_CORE_BASEcascade;dropuserSS_CORE_BASEcascade;dropuserSS_SYN_OUT_BASEcascade;dropuserBENCH_CAPTCHA_BASEcascade;dropuserCONFIG_SERVER_DISTRIB_BASEcascade;dropuserDEV_BANXIAcascade;dropuserBOPS_BASEcascade;dropuserBOPS_COMMON_BASEcascade;dropuserOA_FRONT_BASEcascade;dropuserKEY_CORE_BASEcascade;dropuserBOPS_QP_BASEcascade;i.手动删除DW_USER用户的视图:

selectlOWER(OWNER)||'.'||lower(view_name)fromdba_viewswhereowner='DW_USER';vidview.sqldropviewdw_user.qpmjc_message_push_setting;dropviewdw_user.qpmjc_login_info;dropviewdw_user.qpmjc_game_winning_rule_link;dropviewdw_user.qpmjc_game_winning_rule_config;dropviewdw_user.qpmjc_game_rule_config;dropviewdw_user.qpmjc_client_push_msg_his;dropviewdw_user.qpmjc_client_push_msg;dropviewdw_user.qpmjc_board_wall_card;dropviewdw_user.qpmjc_board_user_settle_detail;dropviewdw_user.qpmjc_board_user_settle;dropviewdw_user.qpmjc_board_user;dropviewdw_user.qpmjc_board_ro_usr_act_fbd;dropviewdw_user.qpmjc_board_round_match_group;dropviewdw_user.qpmjc_board_round_match;dropviewdw_user.qpmjc_board_round;dropviewdw_user.qpmjc_board_meld_group_card;dropviewdw_user.qpmjc_board_meld_group;dropviewdw_user.qpmjc_board_hand_card;dropviewdw_user.qpmjc_board_discard;dropviewdw_user.qpmjc_board_act_msg_seq;dropviewdw_user.qpmjc_board_act_card_link;dropviewdw_user.qpmjc_board_action;dropviewdw_user.qpmjc_board;dropviewdw_user.qpmjc_base_card_config;dropviewdw_user.qpc_room_user;dropviewdw_user.qpc_room_purchase_fund_bill;dropviewdw_user.qpc_room_property_config_link;dropviewdw_user.qpc_room_dismiss_apply;dropviewdw_user.qpc_room_dismiss_apl_user_chos;dropviewdw_user.qpc_room;dropviewdw_user.qpc_role_user_link;dropviewdw_user.qpc_role_authority_link;dropviewdw_user.qpc_role;dropviewdw_user.qpc_property_value_config;dropviewdw_user.qpc_property_config;dropviewdw_user.qpc_group_user_invite_join_his;dropviewdw_user.qpc_group_user_invite_join;dropviewdw_user.qpc_group_user_apply_join_his;dropviewdw_user.qpc_group_user_apply_join;dropviewdw_user.qpc_group_user;dropviewdw_user.qpc_group_type_config;dropviewdw_user.qpc_group_play_prop_cfg_link;dropviewdw_user.qpc_group_playway_room_link;dropviewdw_user.qpc_group_playway;dropviewdw_user.qpc_group_notice;dropviewdw_user.qpc_group;dropviewdw_user.qpc_game_sort;dropviewdw_user.qpc_game;dropviewdw_user.qpc_area_sort;dropviewdw_user.qpcm_staff_role_link;dropviewdw_user.qpcm_staff_role;dropviewdw_user.qpcm_staff_group;dropviewdw_user.qpcm_staff;dropviewdw_user.gldcoin_trans_code;dropviewdw_user.gldcoin_sub_trans_code;dropviewdw_user.gldcoin_general_account;dropviewdw_user.gldcoin_freeze_type;dropviewdw_user.gldcoin_freeze;dropviewdw_user.gldcoin_deposit_type;dropviewdw_user.gldcoin_deposit;dropviewdw_user.gldcoin_charge_biz_type;dropviewdw_user.gldcoin_account_type;dropviewdw_user.gldcoin_account_log;dropviewdw_user.gldcoin_account;dropviewdw_user.cif_user;2、改字符集

shutdownimmediate;startupmount;altersystemenablerestrictedsession;altersystemsetjob_queue_processes=0;altersystemsetaq_tm_processes=0;alterdatabaseopen;ALTERDATABASEcharactersetINTERNAL_USEAL32UTF8;ALTERDATABASENATIONALCHARACTERSETINTERNAL_USEUTF8;shutdownimmediate;startup;setlines1000;select*fromnls_database_parameters;altersystemsetjob_queue_processes=1000;altersystemsetaq_tm_processes=1;3、导入数据导入元数据

viimp_qp.sh#!/bin/bash./home/oracle/.bash_profileexportORACLE_SID=qppriexportNLS_LANG=American_America.AL32UTF8impdp\'/assysdba\'directory=EXPDP_DATAdumpfile=qpasdwsx_%U.dmpparallel=4logfile=impdp_qp.logcontent=metadata_only修改字段

因为字符集不同字段宽度不够,需要提前测试

altertableCONFIG.CFG_CN_CHAR_DICTmodifyvalueCHAR(3);altertableDATA_HANYU_CORE_BASE.HANZImodifyHANZIVARCHAR2(6);......altertableBOPS_BASE.BPBS_SORT_MENUmodifySORT_MENU_NAMEVARCHAR2(48);altertableSS_SYN_OUT_BASE.OABASE_ROLEmodifyROLE_NAMEVARCHAR2(48);导入数据

impdp\'/assysdba\'directory=EXPDP_DATAdumpfile=qpasdwsx_%U.dmpparallel=4logfile=impdp_qp.logexclude=statisticstable_exists_action=append创建DW_USER的视图:

运行脚本创建非加密视图:

dw_user.qpmjc_game_winning_rule_linkdw_user.qpmjc_game_winning_rule_configdw_user.qpmjc_game_rule_configdw_user.qpmjc_client_push_msg_hisdw_user.qpmjc_client_push_msgdw_user.qpmjc_board_wall_carddw_user.qpmjc_board_user_settle_detaildw_user.qpmjc_board_user_settledw_user.qpmjc_board_userdw_user.qpmjc_board_ro_usr_act_fbddw_user.qpmjc_board_round_match_groupdw_user.qpmjc_board_round_matchdw_user.qpmjc_board_rounddw_user.qpmjc_board_meld_group_carddw_user.qpmjc_board_meld_groupdw_user.qpmjc_board_hand_carddw_user.qpmjc_board_discarddw_user.qpmjc_board_act_msg_seqdw_user.qpmjc_board_act_card_linkdw_user.qpmjc_board_actiondw_user.qpmjc_boarddw_user.qpmjc_base_card_configdw_user.qpc_room_userdw_user.qpc_room_purchase_fund_billdw_user.qpc_room_property_config_linkdw_user.qpc_room_dismiss_applydw_user.qpc_room_dismiss_apl_user_chosdw_user.qpc_roomdw_user.qpc_role_user_linkdw_user.qpc_role_authority_linkdw_user.qpc_roledw_user.qpc_property_value_configdw_user.qpc_property_configdw_user.qpc_group_user_invite_join_hisdw_user.qpc_group_user_invite_joindw_user.qpc_group_user_apply_join_hisdw_user.qpc_group_user_apply_joindw_user.qpc_group_userdw_user.qpc_group_type_configdw_user.qpc_group_play_prop_cfg_linkdw_user.qpc_group_playway_room_linkdw_user.qpc_group_playwaydw_user.qpc_group_noticedw_user.qpc_groupdw_user.qpc_game_sortdw_user.qpc_gamedw_user.qpc_area_sortdw_user.qpcm_staff_role_linkdw_user.qpcm_staff_roledw_user.qpcm_staff_groupdw_user.qpcm_staffdw_user.gldcoin_trans_codedw_user.gldcoin_sub_trans_codedw_user.gldcoin_general_accountdw_user.gldcoin_freeze_typedw_user.gldcoin_freezedw_user.gldcoin_deposit_typedw_user.gldcoin_depositdw_user.gldcoin_charge_biz_typedw_user.gldcoin_account_typedw_user.gldcoin_account_logdw_user.gldcoin_accountdw_user.qpmjc_message_push_setting视图失效,引用的表对象不存在,无需创建dw_user.qpmjc_login_info视图失效,引用的表对象不存在,无需创建gold_coin_core_base.gldcoin_accountgold_coin_core_base.gldcoin_account_loggold_coin_core_base.gldcoin_account_typegold_coin_core_base.gldcoin_charge_biz_typegold_coin_core_base.gldcoin_depositgold_coin_core_base.gldcoin_deposit_typegold_coin_core_base.gldcoin_freezegold_coin_core_base.gldcoin_freeze_typegold_coin_core_base.gldcoin_general_accountgold_coin_core_base.gldcoin_sub_trans_codegold_coin_core_base.gldcoin_trans_codeqp_core_base.qpc_area_sortqp_core_base.qpc_gameqp_core_base.qpc_game_sortqp_core_base.qpc_groupqp_core_base.qpc_group_noticeqp_core_base.qpc_group_playwayqp_core_base.qpc_group_playway_room_linkqp_core_base.qpc_group_play_prop_cfg_linkqp_core_base.qpc_group_type_configqp_core_base.qpc_group_userqp_core_base.qpc_group_user_apply_joinqp_core_base.qpc_group_user_apply_join_hisqp_core_base.qpc_group_user_invite_joinqp_core_base.qpc_group_user_invite_join_hisqp_core_base.qpc_property_configqp_core_base.qpc_property_value_configqp_core_base.qpc_roleqp_core_base.qpc_role_authority_linkqp_core_base.qpc_role_user_linkqp_core_base.qpc_roomqp_core_base.qpc_room_dismiss_apl_user_chosqp_core_base.qpc_room_dismiss_applyqp_core_base.qpc_room_property_config_linkqp_core_base.qpc_room_purchase_fund_billqp_core_base.qpc_room_userqp_crm_base.qpcm_staffqp_crm_base.qpcm_staff_groupqp_crm_base.qpcm_staff_roleqp_crm_base.qpcm_staff_role_linkqp_mjcore_base.qpmjc_base_card_configqp_mjcore_base.qpmjc_boardqp_mjcore_base.qpmjc_board_actionqp_mjcore_base.qpmjc_board_act_card_linkqp_mjcore_base.qpmjc_board_act_msg_seqqp_mjcore_base.qpmjc_board_discardqp_mjcore_base.qpmjc_board_hand_cardqp_mjcore_base.qpmjc_board_meld_groupqp_mjcore_base.qpmjc_board_meld_group_cardqp_mjcore_base.qpmjc_board_roundqp_mjcore_base.qpmjc_board_round_matchqp_mjcore_base.qpmjc_board_round_match_groupqp_mjcore_base.qpmjc_board_ro_usr_act_fbdqp_mjcore_base.qpmjc_board_userqp_mjcore_base.qpmjc_board_user_settleqp_mjcore_base.qpmjc_board_user_settle_detailqp_mjcore_base.qpmjc_board_wall_cardqp_mjcore_base.qpmjc_client_push_msgqp_mjcore_base.qpmjc_client_push_msg_hisqp_mjcore_base.qpmjc_game_rule_configqp_mjcore_base.qpmjc_game_winning_rule_configqp_mjcore_base.qpmjc_game_winning_rule_link手动创建加密视图:

createorreplaceviewcif_base.cif_user_viewasselectUSER_ID,LOGIN_NAME,(encryptor(LOGIN_PASSWORD))LOGIN_PASSWORD,(encryptor(REAL_NAME))REAL_NAME,STATUS,(encryptor(EMAIL))EMAIL,(encryptor(QQ))QQ,CAN_LOGIN,CERT_TYPE,(encryptor(CERT_NO))cert_no,substr(CERT_NO,1,6)certno6,substr(CERT_NO,-12,8)birthdaynum,substr(CERT_NO,-2,1)sexnum,GMT_CREATE,GMT_MODIFIED,EMAIL_VALIDATE,QQ_VALIDATE,(encryptor(cell))cell,substr(cell,1,7)cell7,CELL_VALIDATE,(encryptor(ACCOUNT_PASSWORD))ACCOUNT_PASSWORD,NICK_NAME,USER_TYPE_NAME,DOMAIN,SUB_DOMAIN,GMT_CHANGE_IDENTITY,SEX,BIRTHDAY,ONE_AUTH_IDfromcif_base.cif_userwithreadonly;grantselectoncif_base.cif_user_viewtodw_user;createviewdw_user.cif_userasselect*fromcif_base.cif_user_viewwithreadonly;以下视图本不存在,无需创建

createorreplaceviewcif_base.cif_one_auth_viewasselectONE_AUTH_ID,AUTH_NAME,AUTH_NAME_TYPE,GMT_CREATE,GMT_MODIFIED,(encryptor(CELL))CELL,CELL_VALIDATE,DOMAIN,SUB_DOMAIN,DEFAULT_USER_ID,LOGIN_PASSWORD,CAN_LOGIN,ACCOUNT_PASSWORD,(encryptor(REAL_NAME))REAL_NAME,(encryptor(EMAIL))EMAIL,(encryptor(QQ))QQ,CERT_TYPE,(encryptor(CERT_NO))CERT_NO,EMAIL_VALIDATE,QQ_VALIDATE,GMT_CHANGE_IDENTITY,SEX,(encryptor(BIRTHDAY))BIRTHDAYfromcif_base.cif_one_auth;grantselectoncif_base.cif_one_auth_viewtodw_user;createviewdw_user.cif_one_authasselect*fromcif_base.cif_one_auth_viewwithreadonly;授权DW_USER用户:grantCONNECTtoDW_USER;grantRESOURCEtoDW_USER;grantSELECTonQP_CORE_BASE.QPC_GROUPtoDW_USER;grantSELECTonQP_CORE_BASE.QPC_ROOMtoDW_USER;grantSELECTonQP_CORE_BASE.QPC_GROUP_USERtoDW_USER;grantSELECTonQP_CORE_BASE.QPC_ROOM_PURCHASE_FUND_BILLtoDW_USER;grantSELECTonQP_CORE_BASE.QPC_ROOM_USERtoDW_USER;grantSELECTonQP_CORE_BASE.QPC_GROUP_PLAYWAY_ROOM_LINKtoDW_USER;grantSELECTonQP_CORE_BASE.QPC_GROUP_PLAYWAYtoDW_USER;grantSELECTonQP_MJCORE_BASE.QPMJC_BOARDtoDW_USER;grantSELECTonQP_MJCORE_BASE.QPMJC_BOARD_USER_SETTLE_DETAILtoDW_USER;grantSELECTonQP_MJCORE_BASE.QPMJC_BOARD_USERtoDW_USER;grantSELECTonQP_MJCORE_BASE.QPMJC_BOARD_USER_SETTLEtoDW_USER;grantSELECTonQP_CRM_BASE.QPCM_STAFFtoDW_USER;grantSELECTonQP_CRM_BASE.QPCM_STAFF_ROLE_LINKtoDW_USER;grantSELECTonQP_CRM_BASE.QPCM_STAFF_GROUPtoDW_USER;grantSELECTonQP_CRM_BASE.QPCM_STAFF_ROLEtoDW_USER;grantSELECTonCIF_BASE.CIF_USER_VIEWtoDW_USER;grantSELECTonGOLD_COIN_CORE_BASE.GLDCOIN_DEPOSIT_TYPEtoDW_USER;grantSELECTonGOLD_COIN_CORE_BASE.GLDCOIN_ACCOUNT_TYPEtoDW_USER;grantSELECTonGOLD_COIN_CORE_BASE.GLDCOIN_ACCOUNTtoDW_USER;grantSELECTonGOLD_COIN_CORE_BASE.GLDCOIN_ACCOUNT_LOGtoDW_USER;grantSELECTonGOLD_COIN_CORE_BASE.GLDCOIN_DEPOSITtoDW_USER;grantUNLIMITEDTABLESPACEtoDW_USER;编译失效对象:

@?/rdbms/admin/utlrp.sqlselectowner,object_name,subobject_name,statusfromdba_objectswherestatus='INVALID';收集统计信息:

exportNLS_LANG=American_America.AL32UTF8@/home/oracle/cy/stats.sqlvigstats.sh#!/bin/bash./home/oracle/.bash_profileexportORACLE_SID=qpprisqlplus/assysdba<<ASDEOFsettimingonexecdbms_stats.GATHER_DATABASE_STATS(options=>'gather',degree=>16);exit;ASDEOF开启监听:

lsnrctlstartLISTENER开启zabbix监控:

配置---主机----primary-new-qpdb

通知应用

导出:10分钟 采用压缩9G 导入:54min

问题:

ORA-39082: Object type ALTER_FUNCTION:"QP_MJCORE_BASE"."SPLIT" created with compilation warnings 原本就无效 ORA-39082: Object type VIEW:"CIF_BASE"."CIF_USER_VIEW" created with compilation warnings 缺少加密函数

原本无效的对象:

OWNEROBJECT_NAMESUBOBJECT_NAMESTATUS------------------------------------------------------------------------DW_QPDBCIF_USER_LOGINVALIDDW_QPDBCIF_USERINVALID......115rowsselected.

获取dw_user的权限:

/home/oracle/cy/schemas.txtDW_USER/home/oracle/cy/cuser.sh#!/bin/bash./home/oracle/.bash_profileexportORACLE_SID=qppriecho>/home/oracle/cy/cuserfin.sqlcat/home/oracle/cy/schemas.txt|whilereadline;doline=`echo$line|tr'[:lower:]''[:upper:]'`rm-f/home/oracle/cy/cuser1.sqlsqlplus-s/assysdba<<cyeofsetechooffsettermoutoffsetlinesize1000setpagesize0setfeedbackoffsetheadingoffsettrimoutonsettrimspoolonsetlong999999colcmdfora150spool'/home/oracle/cy/cuser1.sql'selectdbms_metadata.get_ddl('USER','$line')CMDfromdual;select'/'fromdual;select'createrole'||granted_role||';'CMDfromdba_role_privswheregrantee='$line'andgranted_rolenotin('SELECT_CATALOG_ROLE','CONNECT','RESOURCE','RECOVERY_CATALOG_OWNER','DBA','EXP_FULL_DATABASE','IMP_FULL_DATABASE')unionallselect'grant'||granted_role||'to'||grantee||'withadminoption;'CMDfromdba_role_privswheregrantee='$line'andadmin_option='YES'unionallselect'grant'||granted_role||'to'||grantee||';'CMDfromdba_role_privswheregrantee='$line'andadmin_option='NO'unionallselect'grant'||privilege||'on'||owner||'.'||table_name||'to'||grantee||'withgrantoption;'CMDfromdba_tab_privswheregrantee='$line'andgrantable='YES'unionallselect'grant'||privilege||'on'||owner||'.'||table_name||'to'||grantee||';'CMDfromdba_tab_privswheregrantee='$line'andgrantable='NO'unionallselect'grant'||privilege||'on'||owner||'.'||table_name||'to'||grantee||'withgrantoption;'CMDfromdba_tab_privswheregranteein(selectgranted_rolefromdba_role_privswheregrantee='$line'andgranted_rolenotin('SELECT_CATALOG_ROLE','CONNECT','RESOURCE','RECOVERY_CATALOG_OWNER','DBA','EXP_FULL_DATABASE','IMP_FULL_DATABASE'))andgrantable='YES'unionallselect'grant'||privilege||'on'||owner||'.'||table_name||'to'||grantee||';'CMDfromdba_tab_privswheregranteein(selectgranted_rolefromdba_role_privswheregrantee='$line'andgranted_rolenotin('SELECT_CATALOG_ROLE','CONNECT','RESOURCE','RECOVERY_CATALOG_OWNER','DBA','EXP_FULL_DATABASE','IMP_FULL_DATABASE'))andgrantable='NO'unionallselect'grant'||privilege||'to'||grantee||'withadminoption;'CMDfromdba_sys_privswheregrantee='$line'andadmin_option='YES'unionallselect'grant'||privilege||'to'||grantee||';'CMDfromdba_sys_privswheregrantee='$line'andadmin_option='NO'unionallselect'grant'||privilege||'to'||grantee||'withadminoption;'CMDfromdba_sys_privswheregranteein(selectgranted_rolefromdba_role_privswheregrantee='$line'andgranted_rolenotin('SELECT_CATALOG_ROLE','CONNECT','RESOURCE','RECOVERY_CATALOG_OWNER','DBA','EXP_FULL_DATABASE','IMP_FULL_DATABASE'))andadmin_option='YES'unionallselect'grant'||privilege||'to'||grantee||';'CMDfromdba_sys_privswheregranteein(selectgranted_rolefromdba_role_privswheregrantee='$line'andgranted_rolenotin('SELECT_CATALOG_ROLE','CONNECT','RESOURCE','RECOVERY_CATALOG_OWNER','DBA','EXP_FULL_DATABASE','IMP_FULL_DATABASE'))andadmin_option='NO'unionallselectcasewhenmax_bytes=-1then'alteruser'||username||'quotaunlimitedon'||tablespace_name||';'else'alteruser'||username||'quota'||max_bytes/1024/1024||'Mon'||tablespace_name||';'endCMDfromdba_ts_quotaswhereusername='$line';spooloffsetfeedbackonsetheadingonsettermoutonsetechoonexit;cyeofecho"------------------------------------------SCHEMA:${line}BEGIN-----------------------------------------------">>/home/oracle/cy/cuserfin.sqlecho"">>/home/oracle/cy/cuserfin.sqlcat/home/oracle/cy/cuser1.sql>>/home/oracle/cy/cuserfin.sqlecho"">>/home/oracle/cy/cuserfin.sqlecho"------------------------------------------SCHEMA:${line}END-----------------------------------------------">>/home/oracle/cy/cuserfin.sqlecho"">>/home/oracle/cy/cuserfin.sqldone

“Oracle字符集从GBK升级到Utf8的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!