欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

oracle数据库配置、安装、部署web应用——笔记

程序员文章站 2022-04-12 21:40:58
1、 oracle数据库部署经验; 1> 先将Oracle - OraDb11g_home2文件复制到home1对应的文件目录下,再安装home1,安装比较简单,设置sys...

1、 oracle数据库部署经验;

1> 先将Oracle - OraDb11g_home2文件复制到home1对应的文件目录下,再安装home1,安装比较简单,设置sys和system用户密码即可;

2> Oracle有自带的SQL/plus 客户端(省去安装客户端的麻烦)

3> 创建用户:用SQL/plus或用PL/SQL Developer创建用户、设置密码、给用户授权grant;

4> 修改安装路径下的\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN\listener.ora 及tnsnames.ora文件的IP主机HOST配置 为安装数据库的主机IP地址;

LISTENER_ORCL =

(ADDRESS = (PROTOCOL =TCP)(HOST = 10.11.0.189)(PORT = 1521))

ORCL =

(DESCRIPTION =

(ADDRESS = (PROTOCOL =TCP)(HOST = 10.11.0.189)(PORT= 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME =orcl.11.0.189)

)

)

5> 在SQL/plus中用创建的用户登录,导入数据库sql文件,

说明: 运行sql脚本
案例: sql>@ d:\a.sql或是sql>startd:\a.sql

6> PL/SQL Developer用户登录查看table文件夹,看到导入的表;

7> 各种事情都做好了,可以修改项目配置文件config.properties中的用户名密码,及IP地址等

driverClass=oracle.jdbc.driver.OracleDriver

jdbcUrl=jdbc\:oracle\:thin\:@10.11.0.189\:1521\:orcl

user=hzbank

password=hzbank

————————————————————————————————————————————————————————————

https://www.cnblogs.com/linjiqin/category/349944.html

一、创建用户
概述:在oracle中要创建一个新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用(即先用sys用户登录,去创建用户并授权SQL>grantconnect to xiaoming;授权成功。,用户才能使用
create user 用户名 identified by 密码;
注意:oracle有个毛病,密码必须以字母开头,如果以数字开头,它不会创建用户
eg、create user xiaomingidentified by oracle;

二、给用户修改密码
概述:如果给自己修改密码可以直接使用
SQL> password 用户名或passw
如果给别人修改密码则需要具有dba的权限,或是拥有alteruser的系统权限
SQL> alter user 用户名identified by新密码

三、删除用户
概述:一般以dba的身份去删除某个用户,如果用其它用户去删除用户则需要具有drop user的权限。
比如dropuser 用户名 【cascade】
注意:在删除用户时,如果要删除的用户,已经创建了表,那么就需要在删除的时候带一个参数cascade,即把该用户及表一同删除;

四、权限
权限分为系统权限和对象权限。
何为系统权限?
用户对数据库的相关权限,connect、resource、dba等系统权限,如建库、建表、建索引、建存储过程、登陆数据库、修改密码等。
何为对象权限?
用户对其他用户的数据对象操作的权限,insert、delete、update、select、all等对象权限,数据对象有很多,比如表,索引,视图,触发器、存储过程、包等。
执行SELECT * FROM Dba_Object_Size;语句可得到oracle数据库对象。

connect system/manager;
grant connect to xiaoming;       //给xiaoming用户授予会话connect权限
grant create session to test;   //给test用户授予会话session权限
connect test/test
即可通过使用test用户连接上Oracle数据库

 

五、角色
角色分为预定义角色和自定义角色。

六、用户管理的综合案例
概述:创建的新用户是没有任何权限的,甚至连登陆的数据库的权限都没有,需要为其指定相应的权限。给一个用户赋权限使用命令grant,回收权限使用命令revoke。
为了讲清楚用户的管理,这里我给大家举一个案例。
SQL> conn xiaoming/oracle
ERROR:
ORA-01045: user XIAOMING lacks CREATE SESSION privilege; logon denied
警告: 您不再连接到 ORACLE。
SQL> show user
USER 为 ""
SQL> conn system/oracle
已连接。
SQL> grant connect to xiaoming;
授权成功。
SQL> conn xiaoming/oracle
已连接。
SQL>
注意:grant connect to xiaoming;在这里,准确的讲,connect不是权限,而是角色。

现在说下对象权限,现在要做这么件事情:
* 希望xiaoming用户可以去查询emp表
* 希望xiaoming用户可以去查询scott的emp表
grant select on scott.emp to xiaoming
* 希望xiaoming用户可以去修改scott的emp表
grant update on scott.emp to xiaoming
* 希望xiaoming 用户可以去修改/删除,查询,添加scott的emp表
grant all on scott.emp to xiaoming
* scott希望收回xiaoming对emp表的查询权限
revoke select on scott.emp from xiaoming

七、权限的传递
//对权限的维护。
* 希望xiaoming用户可以去查询scott的emp表/还希望xiaoming可以把这个权限传递给别人。
--如果是对象权限,就加入with grant option
grant select on emp to xiaoming with grant option
我的操作过程:
SQL> conn scott/oracle;
已连接。
SQL> grant select on scott.emp to xiaoming with grant option;
授权成功。
SQL> conn system/oracle;
已连接。
SQL> create user xiaohong identified by oracle;
用户已创建。
SQL> grant connect to xiaohong;
授权成功。
SQL> conn xiaoming/oracle;
已连接。
SQL> grant select on scott.emp to xiaohong;
授权成功。

--如果是系统权限。
system给xiaoming权限时:grantconnect to xiaoming with admin option
问题:如果scott把xiaoming对emp表的查询权限回收,那么xiaohong会怎样?
答案:被回收。
下面是我的操作过程:
SQL> conn scott/oracle;
已连接。
SQL> revoke select on emp from xiaoming;
撤销成功。
SQL> conn xiaohong/oracle;
已连接。
SQL> select * from scott.emp;
select * from scott.emp
*
第 1 行出现错误:
ORA-00942: 表或视图不存在
结果显示:小红受到诛连了。。

 

八、with admin option与with grant option区别
1、with adminoption用于系统权限授权,with grant option用于对象授权。

2、给一个用户授予系统权限带上with admin option时,此用户可把此系统权限授予其他用户或角色,但收回这个用户的系统权限时,这个用户已经授予其他用户或角色的此系统权限不会因传播无效, 如授予A系统权限create session with admin option,然后A又把create session权限授予B,但管理员收回A的create session权限时,B依然拥有create session的权限,但管理员可以显式收回B create session的权限,即直接revoke create session from B.

而with grant option用于对象授权时,被授予的用户也可把此对象权限授予其他用户或角色,不同的是但管理员收回用with grant option授权的用户对象权限时,权限会因传播而失效,如grant select on table with grant option to A,A用户把此权限授予B,但管理员收回A的权限时,B的权限也会失效,但管理员不可以直接收回B的SELECT ON TABLE 权限。

 

 

 

2、oracle 监听状态怎么查看

查看状态命令:lsnrctl status
启动监听:lsnrctl start
关闭监听:lsnrctl stop

 

 

二、oracle sql*plus常用命令

一、sys用户和system用户
Oracle安装会自动的生成sys用户和system用户
(1)、sys用户是超级用户,具有最高权限,具有sysdba角色,有create database的权限,该用户默认的密码是change_on_install
(2)、system用户是管理操作员,权限也很大。具有sysoper角色,没有create database的权限,默认的密码是manager
(3)、一般讲,对数据库维护,使用system用户登录就可以拉
注意:也就是说sys和system这两个用户最大的区别是在于有没有create database的权限。

二、sql*plus工具简介
sql*plus是oracle自带的工具软件,主要用于执行sql语句,pl\sql块。
操作如下:
(1)、在D:\dev\oracle\product\10.2.0\db_1\bin\目录下的sqlplusw.exe。(D:\dev\oracle\为oracle安装目录)
(2)、在运行栏中输入“sqlplusw”即可

三、sqlplus dos工具简介
(1)、概述:sqlplus是在dos下操作oracle的工具,其功能和sql*plus相似。
(2)、操作如下:在运行栏中输入“sqlplus”即可

四、PLSQLDeveloper工具,需要自己安装,推荐大家使用

五、sql*plus常用命令
1)、连接命令
1.conn[ect]
用法:conn 用户名/密码@网络服务名 [as sysdba/sysoper]
说明:当用特权用户身份连接时,必须带上as sysdba或是assysoper
eg、
SQL> show user
USER 为 "SCOTT"
SQL> conn system/oracle@orcl
已连接。
SQL> show user
USER 为 "SYSTEM"
SQL>
以上命令实现类似切换用户的效果
2.disc/disconn/disconnect
说明: 该命令用来断开与当前数据库的连接
3.pssw[ord]
说明: 该命令用于修改用户的密码,如果要想修改其它用户的密码,需要用sys/system登录。
eg、
SQL> conn scott/oracle
已连接。
SQL> passw
更改 SCOTT 的口令
旧口令:
新口令:
重新键入新口令:
口令已更改
SQL>
4.show user
说明: 显示当前用户名
5.exit
说明: 该命令会断开与数据库的连接,同时会退出sql*plus
5.clear screen
清空屏幕

 

2)、文件操作命令
1.start和@
说明: 运行sql脚本
案例: sql>@ d:\a.sql或是sql>startd:\a.sql
2.edit
说明: 该命令可以编辑指定的sql脚本
案例: sql>edit d:\a.sql,这样会把d:\a.sql这个文件打开
3.spool
说明: 该命令可以将sql*plus屏幕上的内容输出到指定文件中去。
案例: sql>spool d:\b.sql并输入sql>spooloff
eg、
sql>spool d:\b.sql;
sql>select * from emp;
sql>spool off;

3)、交互式命令
1.&
说明:可以替代变量,而该变量在执行时,需要用户输入。
select * from emp where job='&job';

4)、显示和设置环境变量
概述:可以用来控制输出的各种格式,set show 如果希望永久的保存相关的设
置,可以去修改glogin.sql 脚本
1.linesize
说明:设置显示行的宽度,默认是80个字符
show linesize
set linesize 90
2.pagesize说明:设置每页显示的行数目,默认是14
用法和linesize 一样
至于其它环境参数的使用也是大同小异