sqlplus在啟動時會自動運行兩個腳本:glogin.sql、login.sql這兩個文件
執(zhí)行順序為
1.默認(rèn)在在$ORACLE_HOME/sqlplus/admin路徑下查找glogin.sql文件執(zhí)行
2.默認(rèn)在在當(dāng)前路徑下查找login.sql文件執(zhí)行,若未查找到對應(yīng)文件則執(zhí)行3
3.判斷是否設(shè)置SQLPATH環(huán)境變量,如果設(shè)置了該變量則在對應(yīng)路徑下查找并執(zhí)行,未找到則停止查找
login.sql
--SQLPLUS默認(rèn)編輯器設(shè)置為vi define?_editor=vi --默認(rèn)打開DBMA_OUTPUT,這樣不必要每次在輸入這個命令,同時將默認(rèn)緩沖池設(shè)置得盡可能大 set?serveroutput?on?size?1000000 --假脫機輸出文本時,會去除文本行兩端的空格,而且行寬不定,如果設(shè)置為off(默認(rèn)設(shè)置),假脫機輸出的文本行寬度則等于所設(shè)置的linesize set?trimspool?on --設(shè)置選擇LONG和CLOB列時顯示的默認(rèn)字節(jié)數(shù) set?long?5000 --設(shè)置顯示的文本寬為200個字符 set?linesize?200 --設(shè)置SQLPLUS多久打印一次標(biāo)題,將此參數(shù)設(shè)置大些這樣每頁只顯示一次標(biāo)題 set?pagesize?9999 --設(shè)置AUTOTRACE得到解釋計劃輸出的默認(rèn)寬度,一般80足夠放下整個計劃 column?plan_plus_exp?format?a80 --設(shè)置SQLPLUS提示符,顯示格式為用戶@數(shù)據(jù)庫名 column?global_name?new_value?gname set?termout?off define?gname=idle column?global_name?new_value?gname select?lower(user)?||'@'||?substr(global_name,1,decode(dot,0,length(global_name),dot-1))?global_name from?(select?global_name,instr(global_name,'.')?dot?from?global_name); set?sqlprompt?'&gname>' set?termout?on
使用scott用戶登錄后如下
C:UsersAdministrator>sqlplus?/nolog SQL*Plus:?Release?11.2.0.1.0?Production?on?星期四?3月?15?14:50:57?2018 Copyright?(c)?1982,?2010,?Oracle.??All?rights?reserved. idle>conn?scott/123456 已連接。 scott@ORCL>select?*?from?emp; ?????EMPNO?ENAME??????JOB??????????????MGR?HIREDATE??????????????SAL???????COMM ????DEPTNO ----------?----------?---------?----------?--------------?----------?---------- ---------- ??????7369?SMITH??????CLERK???????????7902?17-12月-80????????????800 ????????20 ??????7499?ALLEN??????SALESMAN????????7698?20-2月?-81???????????1600????????300 ????????30 ??????7521?WARD???????SALESMAN????????7698?22-2月?-81???????????1250????????500 ????????30 ??????7566?JONES??????MANAGER?????????7839?02-4月?-81???????????2975 ????????20 ??????7654?MARTIN?????SALESMAN????????7698?28-9月?-81???????????1250???????1400 ????????30 ??????7698?BLAKE??????MANAGER?????????7839?01-5月?-81???????????2850 ????????30 ??????7782?CLARK??????MANAGER?????????7839?09-6月?-81???????????2450 ????????10 ??????7788?SCOTT??????ANALYST?????????7566?19-4月?-87???????????3000 ????????20 ??????7839?KING???????PRESIDENT????????????17-11月-81???????????5000 ????????10 ??????7844?TURNER?????SALESMAN????????7698?08-9月?-81???????????1500??????????0 ????????30 ??????7876?ADAMS??????CLERK???????????7788?23-5月?-87???????????1100 ????????20 ??????7900?JAMES??????CLERK???????????7698?03-12月-81????????????950 ????????30 ??????7902?FORD???????ANALYST?????????7566?03-12月-81???????????3000 ????????20 ??????7934?MILLER?????CLERK???????????7782?23-1月?-82???????????1300 ????????10 已選擇14行。
idle>conn?/as?sysdba; 已連接。 sys@ORCL>drop?role?plustrace; drop?role?plustrace ??????????* 第?1?行出現(xiàn)錯誤: ORA-01919:?角色?'PLUSTRACE'?不存在 sys@ORCL>create?role?plustrace; 角色已創(chuàng)建。 sys@ORCL>grant?plustrace?to?dba?with?admin?option; 授權(quán)成功。 sys@ORCL>grant?plustrace?to?scott; 授權(quán)成功。 sys@ORCL>grant?select?on?v_$sesstat?to?plustrace; 授權(quán)成功。 sys@ORCL>grant?select?on?v_$statname?to?plustrace; 授權(quán)成功。 sys@ORCL>grant?select?on?v_$mystat?to?plustrace; 授權(quán)成功。 sys@ORCL>grant?plustrace?to?dba?with?admin?option; 授權(quán)成功。 sys@ORCL>grant?plustrace?to?scott; 授權(quán)成功。 sys@ORCL>exit
C:UsersAdministrator>sqlplus?/nolog SQL*Plus:?Release?11.2.0.1.0?Production?on?星期四?3月?15?15:19:58?2018 Copyright?(c)?1982,?2010,?Oracle.??All?rights?reserved. idle>conn?scott/123456; 已連接。 scott@ORCL>set?autot?trace?exp?stat; scott@ORCL>select?*?from?emp; 已選擇14行。 執(zhí)行計劃 ---------------------------------------------------------- Plan?hash?value:?3956160932 -------------------------------------------------------------------------- |?Id??|?Operation?????????|?Name?|?Rows??|?Bytes?|?Cost?(%CPU)|?Time?????| -------------------------------------------------------------------------- |???0?|?SELECT?STATEMENT??|??????|????14?|??1218?|?????3???(0)|?00:00:01?| |???1?|??TABLE?ACCESS?FULL|?EMP??|????14?|??1218?|?????3???(0)|?00:00:01?| -------------------------------------------------------------------------- Note ----- ???-?dynamic?sampling?used?for?this?statement?(level=2) 統(tǒng)計信息 ---------------------------------------------------------- ??????????0??recursive?calls ??????????0??db?block?gets ??????????8??consistent?gets ??????????0??physical?reads ??????????0??redo?size ???????1631??bytes?sent?via?SQL*Net?to?client ????????520??bytes?received?via?SQL*Net?from?client ??????????2??SQL*Net?roundtrips?to/from?client ??????????0??sorts?(memory) ??????????0??sorts?(disk) ?????????14??rows?processed scott@ORCL>
可以看到登錄之后 SQLPLUS按照login.sql文件進行相應(yīng)設(shè)置





