ORACLE应用常见傻瓜问题1000问(之一)大家在应用ORACLE的时候可能会遇到很多看起来不难的问题,特别对新手来说,今天我简单把它总结一下,发布给大家,希望对大家有帮助!和大家一起探讨,共同进步!对ORACLE高手来说是不用看的。1.Oracle安装完成后的初始口令?internal/oraclesys/change_on_installsystem/managerscott/tigersysman/oem_temp2.ORACLE9IASWEBCACHE的初始默认用户和密码?administrator/administrator3.oracle8.0.5怎幺创建数据库?用orainst。如果有motif界面,可以用orainst/m4.oracle8.1.7怎幺创建数据库?dbassist5.oracle9i怎幺创建数据库?dbca6.oracle中的裸设备指的是什幺?裸设备就是绕过文件系统直接访问的储存空间7.oracle如何区分64-bit/32bit版本???$sqlplus'/ASSYSDBA'SQL*Plus:Release9.0.1.0.0-ProductiononMonJul1417:01:092003(c)Copyright2001OracleCorporation.Allrightsreserved.Connectedto:Oracle9iEnterpriseEditionRelease9.0.1.0.0-ProductionWiththePartitioningoptionJServerRelease9.0.1.0.0-ProductionSQLselect*fromv$version;BANNER----------------------------------------------------------------Oracle9iEnterpriseEditionRelease9.0.1.0.0-ProductionPL/SQLRelease9.0.1.0.0-ProductionCORE9.0.1.0.0ProductionTNSforSolaris:Version9.0.1.0.0-ProductionNLSRTLVersion9.0.1.0.0-ProductionSQL8.SVRMGR什幺意思?svrmgrl,ServerManager.9i下没有,已经改为用SQLPLUS了sqlplus/nolog变为归档日志型的9.请问如何分辨某个用户是从哪台机器登陆ORACLE的?SELECTmachine,terminalFROMV$SESSION;10.用什幺语句查询字段呢?desctable_name可以查询表的结构selectfield_name,...from...可以查询字段的值select*fromall_tableswheretable_namelike'%'select*fromall_tab_columnswheretable_name='??'11.怎样得到触发器、过程、函数的创建脚本?descuser_sourceuser_triggers12.怎样计算一个表占用的空间的大小?selectowner,table_name,NUM_ROWS,BLOCKS*AAA/1024/1024SizeM,EMPTY_BLOCKS,LAST_ANALYZEDfromdba_tableswheretable_name='XXX';Here:AAAisthevalueofdb_block_size;XXXisthetablenameyouwanttocheck13.如何查看最大会话数?SELECT*FROMV$PARAMETERWHERENAMELIKE'proc%';SQLSQLshowparameterprocessesNAMETYPEVALUE-------------------------------------------------------------------------aq_tm_processesinteger1db_writer_processesinteger1job_queue_processesinteger4log_archive_max_processesinteger1processesinteger200这里为200个用户。select*fromv$license;其中sessions_highwater纪录曾经到达的最大会话数14.如何查看系统被锁的事务时间?select*fromv$locked_object;15.如何以archivelog的方式运行oracle。init.oralog_archive_start=trueRESTARTDATABASE16.怎幺获取有哪些用户在使用数据库selectusernamefromv$session;17.数据表中的字段最大数是多少?表或视图中的最大列数为100018.怎样查得数据库的SID?selectnamefromv$database;也可以直接查看init.ora文件19.如何在Oracle服务器上通过SQLPLUS查看本机IP地址?selectsys_context('userenv','ip_address')fromdual;如果是登陆本机数据库,只能返回127.0.0.1,呵呵20.unix下怎幺调整数据库的时间?su-rootdate-u0801000021.在ORACLETABLE中如何抓取MEMO类型字段为空的资料记录?selectremarkfromoms_flowrecwheretrim(''fromremark)isnotnull;22.如何用BBB表的资料去更新AAA表的资料(有关联的字段)UPDATEAAASETBNS_SNM=(SELECTBNS_SNMFROMBBBWHEREAAA.DPT_NO=BBB.DPT_NO)WHEREBBB.DPT_NOISNOTNULL;23.P4计算机安装方法将SYMCJIT.DLL改为SYSMCJIT.OLD24.何查询SERVER是不是OPS?SELECT*FROMV$OPTION;如果PARALLELSERVER=TRUE则有OPS能25.何查询每个用户的权限?SELECT*FROMDBA_SYS_PRIVS;26.如何将表移动表空间?ALTERTABLETABLE_NAMEMOVETABLESPACE_NAME;27.如何将索引移动表空间?ALTERINDEXINDEX_NAMEREBUILDTABLESPACETABLESPACE_NAME;28.在LINUX,UNIX下如何激活DBASTUDIO?OEMAPPDBASTUDIO29.查询锁的状况的对象有?V$LOCK,V$LOCKED_OBJECT,V$SESSION,V$SQLAREA,V$PROCESS;查询锁的表的方法:SELECTS.SIDSESSION_ID,S.USERNAME,DECODE(LMODE,0,'None',1,'Null',2,'Row-S(SS)',3,'Row-X(SX)',4,'Share',5,'S/Row-X(SSX)',6,'Exclusive',TO_CHAR(LMODE))MODE_HELD,DECODE(REQUEST,0,'None',1,'Null',2,'Row-S(SS)',3,'Row-X(SX)',4,'Share',5,'S/Row-X(SSX)',6,'Exclusive',TO_CHAR(REQUEST))MODE_REQUESTED,O.OWNER||'.'||O.OBJECT_NAME||'('||O.OBJECT_TYPE||')',S.TYPELOCK_TYPE,L.ID1LOCK_ID1,L.ID2LOCK_ID2FROMV$LOCKL,SYS.DBA_OBJECTSO,V$SESSIONSWHEREL.SID=S.SIDANDL.ID1=O.OBJECT_ID;30.如何解锁?ALTERSYSTEMKILLSESSION‘SID,SERIR#’;31.SQLPLUS下如何修改编辑器?DEFINE_EDITOR=“编辑器的完整路经”--必须加上双引号来定义新的编辑器,也可以把这个写在$ORACLE_HOME/sqlplus/admin/glogin.sql里面使它永久有效。32.ORACLE产生随机函数是?DBMS_RANDOM.RANDOM33.LINUX下查询磁盘竞争状况命令?Sar-d33.LINUX下查询CPU竞争状况命令?sar-r34.查询当前用户对象?SELECT*FROMUSER_OBJECTS;SELECT*FROMDBA_SEGMENTS;35.如何获取错误信息?SELECT*FROMUSER_ERRORS;36.如何获取链接状况?SELECT*FROMDBA_DB_LINKS;37.查看数据库字符状况?SELECT*FROMNLS_DATABASE_PARAMETERS;SELECT*FROMV$NLS_PARAMETERS;38.查询表空间信息?SELECT*FROMDBA_DATA_FILES;39.ORACLE的INTERAL用户要口令?修改SQLNET.ORASQLNET.AUTHENTICATION_SERVICES=(NTS)40.出现JAVA.EXE的解决办法?一般是将ORACLEORAHOMEXIHTTPSERVER改成手工激活可以的X是8或941.如何给表、列加注释?SQLcommentontable表is'表注释';注释已创建。SQLcommentoncolumn表.列is'列注释';注释已创建。SQLselect*fromuser_tab_commentswherecommentsisnotnull;42.如何查看各个表空间占用磁盘情况?SQLcoltablespaceformata20SQLselectb.file_id文件ID号,b.tablespace_name表空间名,b.bytes字节数,(b.bytes-sum(nvl(a.bytes,0)))已使用,sum(nvl(a.bytes,0))剩余空间,sum(nvl(a.bytes,0))/(b.bytes)*100剩余百分比fromdba_free_spacea,dba_data_filesbwherea.file_id=b.file_idgroupbyb.tablespace_name,b.file_id,b.bytesorderbyb.file_id43.如把ORACLE设置为MTS或专用模式?#dispatchers=(PROTOCOL=TCP)(SERVICE=SIDXDB)加上就是MTS,注释就是专用模式,SID是指你的实例名。44.如何才能得知系统当前的SCN号?selectmax(ktuxescnw*power(2,32)+ktuxescnb)fromx$ktuxe;45.请问如何在ORACLE中取毫秒?9i之前不支持,9i开始有timestamp.9i可以用selectsystimestampfromdual;如有问题欢迎大家一起探讨!46.如何在字符串里加回车?select'Welcometovisit'||chr(10)||'中文是如何排序的?Oracle9i之前,中文是按照二进制编码进行排序的。在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值SCHINESE_RADICAL_M按照部首(第一顺序)、笔划(第二顺序)排序SCHINESE_STROKE_M按照笔划(第一顺序)、部首(第二顺序)排序SCHINESE_PINYIN_M按照拼音排序48.Oracle8i中对象名可以用中文吗?可以49.如何改变WIN中SQL*Plus启动选项?SQL*PLUS自身的选