




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、OCP 简单 SQL 语句文档约束定义: oracleupdba $ oracleupdba #SQL表示在 oracle 用户下,如果在#模式,可 su oracle 切换表示在 root 用户下表示在 sqlplus 环境下SQL(Structure Query Language)语言是数据库的的,其发展过程如下:语言。SQL 的发展是从 1974 年开始1974 年由 Boyce 和 Chamberlin 提出,当时称 SEQUEL。1976 年IBM 公司的 Sanjase在研制 RDBMS SYSTEM R 时改为 SQL。1979 年ORACLE 公司第一个基于 SQL 的商业化
2、RDBMS 产品。1982 年IBM 公司1985 年IBM 公司1986 年-第一个 RDBMS 语言 SQL/DS。第一个 RDBMS 语言 DB2。化组织 ANSI 宣布 SQL 作为数据库工业标准。SQL 是一个标准的数据库语言,是面向集合的描述性非过程化语言。它功能强,效率高,简单易学易。然而 SQL 语言由于以上优点,同时也出现了这样一个问题:它是非过程性语言,即大多数语句都是独立执行的,与上下文无关,而绝大部分应用都是一个完整的过程,显然用 SQL 完全实现这些功能是很作了如下两方面的工作:扩充 SQL,在 SQL 中引入过程性结构;把 SQL 嵌入到高级语言中,以便一起完成一个
3、完整的应用。的。所以大多数数据库公司为了解决此问题,SQL 语言的分类SQL 语言共分为:数据查询语言 DQL,数据制语言 DCL,数据事务语言 TC。语言 DML,数据定义语言 DDL,数据控1 数据查询语言 DQL数据查询语言 DQL 基本结构是由 SELECT 子句,FROM 子句,WHERE 子句组成的查询块:SELECT FROM WHERE 2 数据语言数据1)语言 DML 主要有三种形式:INSERT2)3)更新:UPDATE删除:DELETE3 数据定义语言 DDL数据定义语言 DDL 用来创建数据库中的各种对象表、视图、索引、同义词、聚簇等如:CREATE TABLE/VIE
4、W/INDEX/SYN/CLUSTER4 数据控制语言 DCL数据控制语言 DCL 用来授予或回收数据库的某种1) GRANT:。2) REVOKE:回收权限5 数据事务语言 TC控制事务提交或回退的语言 commit,rollback,savepo回滚-ROLLBACK回滚命令使数据库状态回到上次最后提交的状态。Savepo可设置保存点,rollback 可回退到指定的 savepoCOMMIT WORK:提交。在数据库的、删除和修改操作时,只有当事务在提交到数据库时才算完成。在事务提交前,只有操作数据库的这个可以看到。能看到所做的事情,别人只有在最后提交完成后才提交数据有三种类型:显式提交
5、、隐式提交及自动提交。下面分别说明这三种类型。显式提交用 COMMIT 命令直接完成的提交为显式提交。其格式为:SQLCOMMIT;隐式提交用 SQL 命令间接完成的提交为隐式提交。这些命令是: ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,EXIT GRANT,NOAUDIT,QUIT,REVOKE,RENAME。自动提交若把MIT 设置为 ON,则在、修改、删除语句执行后,系统将自动进行提交,这就是自动提交。其格式为:SQLSETMIT ON;这是 SQL 部分的第一讲 简单的 sql 语句讲述的知识点有:如何确定数据库是否启动如何确
6、定数据库的实例名字如何指定 ORACLE_SID 变量sqlplus 如何连接到数据库如何在 sqlplus 环境中切换用户如何确认目前连接的是那个用户如何知道用户下有那些表如何查看表的结构,比如列名,数据类型,长度等用户如何查看表的行内容-简单的 sql 语句SELECT *|DISTINCT column|expres 10.sql 语句书写标准sql 语句的算术表达式如何使用别名alias,. FROM table;如何使用连接运算符,字面字符串 q如何去除重复行 15.sql 常见命令APPEND CHANGE CLEAR BUFFERCL SCRINPUTLIST DEL nSAVE
7、 GET START/ EDIT SPOOL EXITCOLUMNJUSTIFY LEFT | CENTER | RIGHT16.isql*plus 使用1.如何确定数据库是否启动确定一个数据库是否启动,可以通过看进程,或查询视图,比如看进程oracleupdba $ ps -ef|grep ora_ oracleupdba $ ps -ef|grep ora_|head -2oracleoracle2594259610 21:42 ?10 21:42 ?00:00:00 ora_pmon_orcl00:00:00 ora_psp0_orcloracleupdba $注意 ora_的字符表示数
8、据库已经启动。比如查视图oracleupdba $ sqlplus / as sysdba SQL select open_mode from v$database; OPEN_MODEREAD WRITESQL看到结果是 READ WRITE 表示数据库已经启动。如果你用了启动的话则可以oracleupdba $ /etc/init.d/oracle sus instance orcl is runging.有结果输出则启动,没有结果输出则没有启动注意该在中2.如何确定数据库的实例名字可以看进程 ora_的”_”最后的字符得到,比如: oracleupdba $ ps -ef|grep or
9、a_|grep -v grep|cut -d _ -f3|uniq orcloracleupdba $ 这里的实例名字就是 orcl可以查视图得到,比如:oracleupdba $ sqlplus / as sysdba SQL select instance_name from v$instance; INSTANCE_NAMEorcl输出结果 orcl 就是实例名字也可以看参数 instance_name 的结果,比如:SQL showparameter instance_nameNAMETYPEVALUEinstance_name SQLValue 对应的结果 orcl 就是实例名字st
10、ringorcl或SQL col name for a30 SQL col value for a20SQL select name,value from v$parameter where name=instance_name;NAMEVALUEinstance_nameorclSQLValue 对应的结果 orcl 就是实例名字3.如何指定 ORACLE_SID 变量当你知道系统上的实例名字后,就可以指定 ORACLE_SID 的值为实例的名字即可。比如的实例是 orcl,则oracleupdba $ exportORACLE_SID=orcl oracleupdba $ sqlplus
11、/ as sysdba登陆将到 orcl 实例oracleupdba $ exportORACLE_SID=fowayoracleupdba $ sqlplus / as sysdba登陆将到 foway 实例这样在同一个系统上可以在不同的实例之间互相切换。如果默认orcl 实例则修改oracle/.bash_profile 中的export ORACLE_SID=orcl即可只要登陆到 oracle 用户,执行 sqlplus “/as sysdba” 默认将到 orcl 实例实例-实例是内存结构和进程结构组成,实例是注意:数据库的一种实现方式。在 oracle 服务器上,大多数操作都是在实
12、例中完成的。 实例在参数中可定义名字。 实例在linux/unix 系统中是区分大小写的。 通常情况下实例名字与库名是相同的。4.sqlplus 如何连接到数据库要连接到一个数据库有很多种办法。比如本地:oracleupdba $ ps -ef|grep ora_|grep -v grep |cut -d _ -f3|uniq orcloracleupdba $ exportORACLE_SID=orcloracleupdba $ sqlplus / as sysdba管理员 sysdba本地登陆oracleupdba $ sqlplus scott/tiger普通用户本地登陆比如网络:ora
13、cleupdba $ tnsorclTNSUtility for Linux: Ver.0 - Production on 30-9 月 -2010 23:58:56Copyright (c) 1997,2010, Oracle.s.已使用的参数文件:已使用 TNSNAMES 适配器来别名Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =TCP)(HOST = u= orcl)OK (20 毫秒)oracleupdba $)(PORT = 1521) (CONNECT_DATA = (SERVI
14、CE_NAME如果看到 OK 字样则说明 Oracle 网络正常,可以网络连接oracleupdba $ sqlplussys/oracleorcl as sysdba管理员 sysdba网络登陆oracleupdba $ sqlplus scott/tigerorcl普通用户网络登陆或管理员 sysdba网络登陆oracleupdba $ sqlplussys/oracleu:1521/orcl as sysdba普通用户网络登陆oracleupdba $ sqlplus scott/tigeru:1521/orcl管理员 sysdba网络登陆oracleupdba $ sqlplussys
15、/oracle5:1521/orcl as sysdba普通用户网络登陆oracleupdba $ sqlplus scott/tiger5:1521/orcl当然也可以这样网络登陆的:oracleupdba $ sqlplus scott/tiger”(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP) (HOST=5)(PORT=1521)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)”注意如果指定orcl 则需要在执行sqlplus 命令的机器上配置tnsnames.ora 定义orcl 连接字符串;如果指定ip
16、:port/orcl 则需要在 ip 所在服务器上配置 listener.ora 定义数据库 orcl 配置5.如何在 sqlplus 环境中切换用户oracleupdba $ sqlplus /nolog uniread Loaded history (48 lines)SQL*Plus: Release .0 - Production on五 10 月 1 08:14:10 2010Copyright (c) 1982, 2010, Oracle.s.SQL conn /as sysdba已连接。管理员连接默认的实例,这个默认的实例是$ORACLE_SID 指定的。SQL connsys/
17、oracleorclas sysdba已连接。管理员通过 oracle 网络连接到指定的实例,orcl 中的 orcl 是本机 oracle 网络配置中指定的。该网络配置文件位于$ORACLE_HOME/network/admnsnames.ora.到底连接到哪个实例是在 tnsnames.ora 中定义的 oracle 服务器所对应的网络配置文件定义的。SQL conn sys/oracle5:1521/orclas sysdba已连接。管理员通过TCP 网络协议连接到指定的实例,/orcl 中的orcl 是5 中的oracle网络配置中指定的。该网络配置文件位于$ORACLE_HOME/n
18、etwork/admin/listener.oraSQL alter user scott identified by tiger account unlock;用户已更改。修改 scott 用户为 tiger,并把帐号。 默认该帐号是锁定的。关于 scott 用户:使用 oracle 自带的模板建立的数据库中默认都有 scott 这个用户的,scott是 oracle 公司的一个很重要的开发,oracle 成立之初他是员工为 4 的员工,承担了绝大部分的前期 oracle 产品代码的编写工作。比如 v1,v2,v3 版本都是他完成架构设计和代码编写的。后来 scott 离开了 oracle
19、公司。由于他长期致力于 oracle 数据库,几乎没时间陪他可爱的女儿,名叫 tiger 的宠物猫就代替了他陪伴女儿。为此特将 scott以表示对女儿的歉意,也是 oracle 对 scott 功劳的肯定与留念。 SQL conn scott/tiger已连接。连接本机默认的实例到 scott 用户SQL conn scott/tigerorcl已连接。默认设置为 tiger连接本机网络配置文件 tnsnames.ora 定义的连接字符串 orcl 定义的实例中的 scott 用户SQL conn scott/tiger5:1521/orcl已连接。连接 5:1521 端口所在的 oracle
20、 服务器的连接字符串 orcl 定义的实例中的 scott用户注意:conn 是 connect 的简写。 用来在 sqlplus 中连接指定用户用的。6.如何确认目前连接的是那个用户 oracleupdba $ sqlplus /nolog SQL show user;USER 为 表示没有连接到任何用户SQL conn scott/tiger已连接。SQL show user; USER 为 SCOTT连接用户为 scottSQL conn / as sysdba已连接。SQL show user; USER 为 SYS连接用户为 sys 并且是超级管理员SQL conn / as sys
21、oper已连接。SQL show user; USER 为 PUBLIC连接用户为 public 并且是管理员当然你也可以如下查看得到:SQL conn/as sysdba已连接。SQL select username from v$ses USERNAMEwheresid=(select sid from v$myswhere rownum=1);SYS当前连接的是 sys 用户,注意这里的 v$视图是 sys 用户所拥有,默认只能 sys 用户能,如果你想非 sys 用户能,则授予 select_catalog_role 的权限。比如SQL grant select_catalog_rol
22、e to scott;成功。SQL conn scott/tiger已连接。SQL select username from v$sesUSERNAMEwheresid=(select sid from v$myswhere rownum=1);SCOTT连接用户为 scott SQL7.如何知道用户下有那些表当工作。知道如何连接到数据库后,就想知道用户下有那些表等对象信息,以便进一步查询用户下有那些表可以通过查询 tab 同义词,user_tables 视图等得到SQL conn scott/tiger已连接。SQL select * from tab;TNAMETABTYPECLUSTER
23、IDDEPT EMP BONUSSALGRADETABLE TABLE TABLETABLESQL select table_name from user_tables;TABLE_NAMEDEPTEMP BONUSSALGRADE这样就知道自己用户下有那些表了。如果是管理员如何知道 scott 有那些表呢?通过 dba_tables 视图查询即SQL conn / as sysdba已连接。SQL select owner,table_name from dba_tables where owner=upper(scott);到:OWNERTABLE_NAMESCOTT SCOTT SCOT
24、TSCOTTDEPT EMP BONUSSALGRADE注意:在 oracle 数据库中,表是一种对象,也有人叫其为对象表。对象 object对象还包括视图,索引,函数,程等用户下能存放的任何的逻辑结构如果一个用户下有了对象就叫方案 schema. 这个 schema 的名字与用户名是相同的。在 oracle 数据库中对象名字,用户名字,方案的名字等处理默认为大写的。比如执行 conn scott/tiger 实际是 conn SCOTT/TIGERSQL conn scott/tiger已连接。SQL conn SCOTT/TIGER已连接。SQL conn scott/tiger ERRO
25、R:ORA-01017: 用户名/口令无效; 登录被警告: 您不再连接到 ORACLE。-因为”scott” 表示小写的scott 字符,没有加”的 scott 默认为大写的 SCOTT,而数据库的为大写 SCOTT,所以找不到小写的 scott报错8.如何查看表的结构,比如列名,数据类型,长度等当知道如何查询用户具备那些表后,就需要了解表的结构信息。那么可以很简单的描述表结构即可。比如oracleupdba $ sqlplus /nolog uniread Loaded history (129 lines)SQL*Plus: Release .0 - Production on五 10 月
26、 1 10:24:08 2010Copyright (c) 1982, 2010, Oracle.s.SQL conn scott/tiger已连接。SQL select table_name from user_tables;TABLE_NAMEDEPT EMP BONUSSALGRADESQL desc dept;名称是否为空? 类型DEPTNO DNAMELOCNOT NULL NUMBER(2)VARCHAR2(14) VARCHAR2(13)desc dept 可以明白 dept 表的结构明白表结构对一个 DBA 来说。比如比如查询表下指定列就需要知道表有那些列。对表的字符或日期类型
27、的列做限制则需要加并且区分大小写SQL select * from dept;DEPTNO DNAMELOC10 ACCOUNTING20 RESEARCH30 SALES40 OPERATIONSNEW YORK DALLASCHICAGOTONSQL select deptno,dname from dept;DEPTNO DNAME10 ACCOUNTING20 RESEARCH30 SALES40 OPERATIONSSQL select deptno,dname from dept where deptno=10 ;DEPTNO DNAME10 ACCOUNTINGSQL selec
28、t deptno,dname from dept where dname=SALES ;DEPTNO DNAME30 SALESSQL inserto dept values(50,TECH,CHENGDU);已创建 1 行。9.用户如何查看表的行内容要得到表行,使用 select 语句,基本语法如下:SELECT *|DISTINCT column|expresalias,. FROM table;Selectfrom 是关键子*表示所有列Column 表示指定列名,如果有多个,分割开Distinct column 去初重复行Expres表达式Alias 表示定义别名Table 表示数据来自
29、哪个表或视图10.sql 语句书写标准不区分大小写但单引号,双引号之内的区分大小写可分行书写,当关键字不能分行可排版,可注释增加可读性通常关键字大写,其他小写使用 ; 结束语句或 提行/ 结束语句比如:SQL conn scott/tiger已连接。SQL select dname from dept;DNAMETECH ACCOUNTING RESEARCH SALESOPERATIONSSQL select dname2from dept;DNAMETECH ACCOUNTING RESEARCH SALESOPERATIONSSQL SELECT dname2FROM dept;DNAM
30、ETECH ACCOUNTING RESEARCH SALESOPERATIONSSQL select deptno,23fromdnamedept;DEPTNO DNAME50 TECH10 ACCOUNTING20 RESEARCH30 SALES40 OPERATIONSSQL select dname from dept-查询部门 ;DNAMETECH ACCOUNTING RESEARCH SALESOPERATIONSSQL select * from dept where dname=SALES;DEPTNO DNAMELOC30 SALESCHICAGOSQL select *
31、 from dept where dname=sales;未选定行SQL select * from dept;DEPTNO DNAMELOC50 TECH10 ACCOUNTING20 RESEARCH30 SALES40 OPERATIONSCHENGDU NEW YORK DALLASCHICAGOTONSQL select * from dept2/DEPTNO DNAMELOC50 TECH10 ACCOUNTING20 RESEARCH30 SALES40 OPERATIONSCHENGDU NEW YORK DALLASCHICAGOTONSQL11.sql 语句的算术表达式在
32、sql 语句中可以使用+ - * /算术表达式,( )可改变默认的运算规则不能对 null 进行算术运算,否则为 null.如果一定要运算则采用 null 函数比如 nvl 处理比如:显示员工的名字,月薪,年薪SQL select ename,sal,sal*12 from emp;显示员工的名字,月薪,上涨 500 后月薪SQL select ename,sal,sal+500 from emp;显示员工的名字,月薪,奖金,月总收入SQL selectm,sal+nvl(comm,0) from emp;由于 comm 有些为 null,不能算术运算,所以用 nvl 函数处理nvl(comm
33、,0)如果 comm 为 null 则赋值 0,否则显示实际的值显示员工的名字,年薪,月上涨 500 后年薪SQL select ename,sal*12,(sal+500)*12 from emp;12.如何使用别名别名用途主要有:区分同名列,按照你要求显示列标题,表达式合法化使用别名: 直接写在 列后用 空格分割开,可以用 as 增强可读性,通常使用” “引起来比如显示员工的名字,年薪,年薪标题为 annual salarySQL select ename,sal*21 annual salary from emp; SQL select ename,sal*21 asannual sal
34、ary from emp;的合法化SQL conn/as sysdbaSQL grant create view to scott; SQL conn scott/tigerSQL create or replace view vsal aect ename,sal*12from emp;create or replace view vsal aect ename,sal*12from emp*第 1 行出现错误:ORA-00998: 必须使用列别名命名此表达式SQL create or replace view vsal aect ename,sal*12 asalfrom emp;视图已创
35、建。比如显示员工上下级关系,区分同名列这个中 ename 有两个,不好区分哪个是别名可区分还是下级13.如何使用连接运算符,字面字符串 q连接字符串| 可以把需要字符连接成新字符,连接字符操作中的字符用单引号,如果要连接单引号则使用成套的单引号,或 q 操作符转义q字符比如SQL select ename,job from emp where deptno=10;ENAMEJOB- -CLARK KING MILLER想得到如下的结果输出:MANAGERCLERKCLARKis workMANAGER可以用|运算符得到:SQL select ename| is work |job from e
36、mp where deptno=10;ENAME|ISWORK|JOB-CLARK is work MANAGER KING is workMILLER is work CLERK当然使用连接函数 concat 也可以得到同样的结果SQL select concat(concat(ename, is work ),job) from emp where deptno=10;CONCAT(CONCAT(ENAME,ISWORK),JOB)-CLARK is work MANAGER KING is workMILLER is work CLERKSQL select ename,job from
37、emp where deptno=10;ENAMEJOB- -CLARK KINGMILLERMANAGERCLERK如果要显示:CLARKs job is MANAGER要表示则或 q 操作符SQL select ename|s job is |job fromemp where deptno=10;ENAME|SJOBIS|JOB-CLARKs job is MANAGER KINGs job isMILLERs job is CLERK或SQL select ename|qs job is |job fromemp where deptno=10;ENAME|QSJOBIS|JOB-CL
38、ARKs job is MANAGER KINGs job isMILLERs job is CLERK其中 qs job is 里面的可以替换成其他字符的 比如 qqas job is a14.如何去除重复行在一个表里面某个字段存在相同的值。如果你要得到唯一值需要 distinct 或 unique 函数处理使用办法:distinct column或 distinct(column)或 unique column或 unique(column)比如 显示公司里面的员工SQL select distinct(mgr) from emp;或SQL select distinctmgr from
39、emp;或SQL select unique(mgr) from emp;或SQL select uniquemgr from emp;在 oracle 系统 中 distinct 和 unique 互为同义词。15.sql 常见命令APPEND 追加内容到行末比如语法APPEND textCHANGE更改第一次出现的指定字符为新字符语法 CHANGE sepchar old sepchar newsepchar比如INPUT新起一行追加内容 语法 INPUT text比如LIST列出 buffer 中的语句 语法LIST n | n m | n* | n LAST | * | * n | *
40、 LAST | LAST比如 list 2 指定显示第行 也可指定使用 2 不输入 list list 2 5显示第 2 到第 5 行list 2 last 显示第行到最后行list last 最后那行DEL 删除指定行 语法DEL n | n m | n * | n LAST | * | * n | * LAST | LAST使用方法同 listCLEAR BUFFER清楚 buffer 中语句CL SCR清屏,回到屏幕最顶端SAVE保存 buffer 中 sql 到文件语法SAVE FILE file_name.ext CREATE | REPLACE | APPENDGET获取文件到 b
41、uffer 语法GET FILE file_name.ext LIST | NOLISTRUN/执行 buffer 中语句START/执行语法START url|file_name.ext arg . url|file_name.ext arg .EDIT编辑为其他编辑器如 vi语法 默认 linux 采用 ed 编辑器,可通过 define_editor=vi 命令修改EDIT file_name.extSPOOL 保存屏幕内容到文件 语法SPOOL file_name.ext CREATE | REPLACE | APPEND | OFF | OUTHOST! 调用操作系统命令语法 HOS
42、T ! ddCOLUMNJUSTIFY LEFT | CENTER | RIGHT格式化列显示 语法COLUMN column | expr option . Option 可跟如下操作ALIAS alias CLEARENTMAP ON|OFF FOLD_AFTER FOLD_BEFOREFORMAT format HEADING textJUSTIFY LEFT | CENTER | RIGHTLIKE expr | alias NEWLINENEW_VALUE variableNOPR | PRNULL text OLD_VALUE variable ON|OFFWRAPPED | WO
43、RD_WRAPPED | TRUNCATED比如:修改列长度显示 COL columnFORMAT format可看到 dname 列长度修改为 30 个字符长度修改列名为指定列名colcolumnheadingnew_name可以看到 loc 列显示为 location修改列显示主副标题 col column heading master_heading|slave_heading可以看到 dname 列显示为主标题 Department 副标题 Name修改默认列显示对齐:col column jus c col column jus lcol column jus r居中居左居右可以看到
44、 SAL 列名居中显示默认列显示:数字类型右边,字符日期等在左边某列显示 colcolumn nopri取消col column pri数字转字符 colcolumn for format对数字支持的符号 常用的有 0,9,$,L/l,G/g,D/d 以及千分符号和小数点0 匹配数字的个数,显示指定长度,如果位数用 0 补9 匹配数字的个数, 显示实际长度$ 美圆符号L/l 本地货币符号 G/g/, 千分符号 D/d/.小数点支持的其他符号看 SQL*Plus Users Guide and Reference 手册对 null 值处理 col column nulltext列的切取与回绕 c
45、ol column wracol column wor col column tru按照指定字符长度切取分行显示按照单词切取分行显示只显示切取的指定长度字符查看列的定义 col column取消列的定义 col column cle取消所有列定义 cle columns启动列定义 col column on禁用列定义 col column off指定列分行显示col column newl令看产品手册文档的:SQL*Plus Users Guide and Reference16.isql*plus 使用从oracle9i开始,oracle提供了web方式的sqlplus界面,通过isqlpl
46、us,用户可以不需要安装任何oracle客户端,就能够通过浏览器方式的sqlplus进行数据操作与数据库管理。普通的数据库用户可以直接通过isqlplus的登陆,进入该后会直接进入数据库用户登陆界面,使用数据库中的普通用户即可登陆;但如果是DBA用户登陆isqlpus,则需要首先配置isqlplus dba的用户和口令,然后输入,进入该后首先会弹出一个登陆框,要求先输入iSQL*Plus DBA的用户和,注意这里不是数据库用户,而是isqlplus应用服务器要求的用户和,也就是前面配置的isqlplus dba的用户名和口令,然后才能出现isqlplus登陆界面,此时可以输入sys或者syst
47、em用户,登陆数据库进行管理。要以DBA登陆isqlplus,必须先配置好oc4j用户。oc4j可以使用两种认证方式:基于xml配置文件(jazn-data.xml) 或者基于LDAP(Oracleernet Directory) 。通常采用xml配置文件认证的方式较多,这种方式使用的该配置文件位于$ORACLE_HOME/oc4j/j2ee/isqlplus/application-deployments/isqlplus/config,但是该配置文件中的是加密过的,所以无法手动修改该文件,配置用户需要通过JAZN(JavaAuthoriZatioN)来配置,JAZN是oracle提供的一个
48、JASS(Java Authentication and AuthorizationService)工具。通过JAZN,可以完成以下任务:Create user / List user / Grant the webDba role / Remove users /Revoke the webDba role / Change usasswords上述任务既可以先进入JAZN命令环境后再执行,也可以直接直接在命令行中实现。Isql*plus 是基于浏览器的一种 b/s 结构的应用程序。通过他可以直接执行使用办法如下:的 sql 语句。oracleupdba $ isqlplusctl stop
49、 oracleupdba $ isqlplusctlstart端口可以在 portlist.ini 文件中找到停止 isql*plus启动 isql*plusoracleupdba $ grSQL $ORACLE_HOME/install/portlist.iniiSQL*Plus HTTP port number =5560oracleupdba $Username 那输入普通用户的名字 比如 scott Password输入Connect identifier 输入网络连接字符,通常输入实例名字 比如 orcl点 login 即可登陆 然后使用这个 web 工具了这些功能菜单一看就明白,就
50、不用我演示了。关于 DBA 用户登陆 isql*plus为了使某个用户以 SYSDBA 或 SYSOPER OC4J 用户管理器中设置该用户:创建一个用户给该用户授予 webDba 角色$ cd $ORACLE_HOME/oc4j/j2ee/isqlplus/application-deployments/isqlplus$JAVA_HOME/bin/java -perties=登录 iSQL*Plus,必须通过执行以下步骤在$ORACLE_HOME/oc4j/j2ee/home/config/ps -jar $ORACLE_HOME/oc4j/j2ee/home/jazn.jar -user
51、 iSQL*Plus DBA/admin -passworde -sJAZN adduser iSQL*Plus DBA username passwordJAZN grantrole webDba iSQL*Plus DBA usernameOracle 10g 上配置 isqlplus dba 的方法,注意 unix 和 windows 上稍有不同。unix:$ isqlplusctl stop$ JAVA_HOME=$ORACLE_HOME/jdk$ export JAVA_HOME$ cd $ORACLE_HOME/oc4j/j2ee/isqlplus/application-depl
52、oyments/isqlplus$ $JAVA_HOME/bin/java-Dperties=$ORACLE_HOME/oc4j/j2ee/home/config/ps -jar$ORACLE_HOME/oc4j/j2ee/home/jazn.jar -user iSQL*Plus DBA/admin -passworde sJAZN: adduser iSQL*Plus DBA updba fowayJAZN: grantrole webDba iSQL*Plus DBA updbaJAZN: exit$ isqlplusctl startwindows:set ORACLE_HOME=.s
53、et JAVA_HOME=%ORACLE_HOME%/jdkcd %ORACLE_HOME%/oc4j/j2ee/isqlplus/application-deployments/isqlplus%JAVA_HOME%/bin/javaDperties=%ORACLE_HOME%/oc4j/j2ee/home/config/ps -jar%ORACLE_HOME%/oc4j/j2ee/home/jazn.jar -user iSQL*Plus DBA/admin -passworde s注意:1、admin 虽然是默认的管理员,但初始并没有真正被2、必须在$ORACLE_HOME/oc4j/j
54、2ee/isqlplus/application-deployments/isqlplus 目录中执行命令,否则会出现下面的错误:oracle.security.jazn.JAZNRuntimeException: Configuration file configjazn.xml does not exist.Check your JAAS configuration settings.或者Realm iSQL*Plus DBA does not exist in system.3、在 windows 中注意目录的书写,不能使用,而要像 unix 一样使用/4、iSQL*Plus DBA 的默认管理员 admin 的默认口令是 口令e,为了安全起见,最好修改比如:oracleupdba $ cat /tmp/add.sh isqlplusctl stopexport JAVA_HOME=$ORACLE_HOME/jdkcd $ORACLE_HOME/oc4j/j2ee/isqlplus/application-deployments/i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度二手车按揭买卖及配件供应合同
- 2025建筑外墙保温系统施工分包合同协议书
- 2025关于电影导演聘用合同范本
- 抵账房屋买卖合同范本
- 武汉市商品房买卖合同
- 农村宅基地离婚分割协议
- 洗衣店和单位洗衣合同范本
- 宠物自愿绝育协议书
- 合作购买资产协议书
- 会计顶岗协议书范本
- 2025年湖南省低空经济发展集团有限公司招聘11人笔试参考题库附带答案详解
- 医疗商务谈判艺术
- 2025年广东中考试题数学及答案
- 四川2024年12月四川省内江市事业单位公开选调2名工作人员笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 2025年河南职业技术学院单招职业技能测试题库及参考答案
- 2025年四川省成都市成华区中考英语一诊试卷
- 2023七年级数学下册 第六章 概率初步 3 等可能事件的概率第2课时 游戏的公平性说课稿 (新版)北师大版
- 各种注射技术常见并发症的预防及处理
- 工程竣工验收流程汇报
- 夫妻房产赠与一半协议书范本
- 《智能网联汽车云控系统 第1部分 系统组成及基础平台架构》
评论
0/150
提交评论