oracle数据库01-连接&用户&权限

     Oracle数据库是Oracle(中文名称叫甲骨文)公司的核心产品,Oracle数据库是一个适合于大中型企业的数据库管理系统。

     Oracle数据库涉及银行、电信、移动通信、航空、保险、金融、电子商务和跨国公司等,Oracle的市场占有率最高,显然Oracle的主要用户涉及面非常广。

     Oracle产品是免费的,可以在Oracle官方网站上下载到安装包,但是Oracle服务是收费的。在Java开发中,Oracle数据库是非常理想的选择。

          http://www.oracle.com/index.html      

          http://www.oracle.com/cn/downloads/index.html

     Oracle公司成立以来,从最初的数据库版本到Oracle7i、Oracle8i、Oracle9i,Oracle10g,Oracle11g到Oracle12c虽然每一个版本之间的操作都存在一定的差别,但是Oracle对数据的操作基本上都遵循SQL标准。因此对Oracle开发来说版本之间的差别不大。(以后都为Oracle12c下操作)……

     Oracle同MySQL一样,数据库软件和客户端软件是分开的。MySQL是基于数据库的,即每个项目可以创建一个单独的数据库。Oracle是基于用户的,即在Oracle中只创建一个数据库,在该数据库中位每个项目创建一个用户,每个用户使用自己创建的数据表。

     Oracle数据库安装后的全局数据库名是数据库在服务器网络中的唯一标识。

     安装过程中的口令管理中,可以对数据库用户设置密码,设置是否锁定。

     Oracle中为管理员预置了两个用户分别是sys和system,密码为全局数据库口令。sys相当于老板,system相当于总经理,所有的资源都是sys用户的,system可以调配这些资源。Oracle客户端使用用户名和密码登录Oracle系统后才能对数据库操作。

  

     SQL*Plus命令行客户端,在windows的cmd中:

     连接数据库命令: conn 用户名/密码 as连接身份@服务器连接字符串

    

    连接身份:表示该用户连接后拥有的权限。(sysdba、sysoper、normal)

      sysdba: 即数据库管理员,权限包括:打开数据库服务器、关闭数据库服务器、备份数据库、恢复数据库、日志归档、会话限制、管理功能、创建数据库。sys用户 必须用sysdba身份才能登录,system用户可以用普通身份登录。

      sysoper:即数据库操作员,权限包括:打开数据库服务器、关闭数据库服务器、备份数据库、恢复数据库、日志归档、会话限制。

      normal:即普通用户,权限只有查询某些数据表的数据。默认的身份是normal用户。

   服务器连接字符串:

     客户端工具可以根据“服务器连接字符串”对服务器进行连接,有了连接字符串后客户端就可以像操作本机一样操作远程数据库,因此“服务器连接字符串”的配置也叫本地网络服务配置,如果SQL*Plus工具启动在服务器上,并且服务器上只有一个数据库实例的情况下,连接字符串可以缺省,在连接字符串中包括连接服务器的协议,服务器的地址服务器的端口等设置,Oracle服务名等,该配置文件在Oracle安装目录下的:
network/ADMIN/ tnsnames.ora。

    Oracle的服务:OracleServiceORCL和OracleOraDB12Home1TNSListener;

       OracleServiceORCL该服务是oracle数据库启动的基础,只有该服务启动了,Oracle数据库才能正常启动。这是必须启动的服务。
       OracleOraDB12Home1TNSListener该服务是服务器端为客户端提供的监听服务,只有该服务在服务器上正常启动,客户端才能连接到服务器。该监听服务接收客户端发出的请求,然后将请求传递给数据库服务器。一旦建立了连接,客户端和数据库服务器就能直接通信了。

   Oracle启动和关闭:startup open; shutdown immediate;

   Oracle数据库中,默认情况下,所有系统的数据,SQL关键字等都是大写的,在操作过程中,Oracle会自动把这些内容转换为大写,因此用户操作时不需考虑大小写问题,一般情况下,为了良好的程序风格,程序中建议关键字用大写,非关键字可以使用小写。

   Oracle中,一般不会轻易在一个服务器上创建多个数据库,在一个数据库中,不同的项目由不同的用户访问,每一个用户拥有自身创建的数据库对象,因此用户的概念在Oracle中非常重要。Oracle的用户可以用CREATE USER命令来创建。

 CREATE USER 用户名 IDENTIFIED BY 口令(密码) [ACCOUNT LOCK|UNLOCK]

  eg:CREATE USER tskk IDENTIFIED BY tskk123 ACCOUNT UNLOCK;

  修改用户的密码:ALTERUSER 用户名 IDENTIFIED BY 新密码;

  修改用户处于锁定(非锁定)状态:ALTER USER
用户名 ACCOUNT LOCK|UNLOCK;

     Oracle用户对数据库管理或对象操作的权利,分为系统权限和数据库对象权限。
        系统权限比如:CREATE SESSION,CREATE TABLE等,拥有系统权限的用户,允许拥有相应的系统操作。

        数据库对象权限,比如对表中的数据进行增删改操作等,拥有数据库对象权限的用户可以对所拥有的对象进行对应的操作。

      Oracle在SQL*Plus中的命令以分号(;)结尾,代表命令完毕并执行,系统同时会把该命令保存在缓存中,缓存中只保存最近执行过的命令,如果重新执行缓存中的命令,直接使用左斜杠符号(/)。如果命令不以分号结尾,该命令只是写入缓存保存起来,但并不执行。使用ED命令可以打开缓冲区。

       CONNECT角色:主要应用在临时用户,特别是那些不需要建表的用户,通常只赋予他们CONNECT role。CONNECT是使用Oracle的简单权限,拥有CONNECT角色的用户,可以与服务器建立连接会话(session,客户端对服务器连接,称为会话)。

      RESOURCE角色:更可靠和正式的数据库用户可以授予RESOURCErole。RESOURCE提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)等。      DBA角色:DBA role拥有所有的系统权限----包括无限制的空间限额和给其他用户授予各种权限的能力。用户system拥有DBA角色。

      DBA角色:DBA role拥有所有的系统权限----包括无限制的空间限额和给其他用户授予各种权限的能力。用户system拥有DBA角色。
    

     授予角色给用户:GRANT角色|权限 TO 用户(角色)
     回收权限:REVOKE 角色|权限 FROM 用户(角色)

 

 

 

 

 

 

 

 

 

时间: 2024-12-11 02:10:54

oracle数据库01-连接&用户&权限的相关文章

J2EE应用中与Oracle数据库的连接

j2ee|oracle|数据|数据库 在J2EE应用程序开发中,应用程序与数据库连接的建立是我们经常遇到的问题之一.在这里我主要谈谈在本地应用程序中通过OCI方式.thin方式和JdbcOdbc桥方式连接Oracle数据库,在iPlanet Application Server 6.5和Sun Java System Application Server 7中对Oracle数据库连接池的配置以及应用中如何从连接池中获得连接. 一.本地通过JDBC获得Oracle数据库连接 通过JDBC获得Ora

数据库服务器-什么情况下会出现oracle数据库自身连接超出最大连接数 ----急急急!!!

问题描述 什么情况下会出现oracle数据库自身连接超出最大连接数 ----急急急!!! 5C 这些天一直被这个问题困扰,oracle连接超出最大连接数.原以为是tomcat程序还有没释放的连接,但是经过追踪审查之后发现不是程序的问题,而是数据库本身连接数异常多.下面是我操作过程. 重启oracle服务后,登陆sqlplus.SQL> select count(*) from v$session;SQL> show parameter processes;SQL> show parame

oracle11g-在虚拟机linux上oracle数据库不能连接

问题描述 在虚拟机linux上oracle数据库不能连接 可能是在虚拟机上删除了个表空间,造成数据库一直不能打开. linux上命令行显示这样: cannot identify/lock data file 6 - see DBWR trace file data file 6 : 'home/oracle/j04.dbs' 求大师解决下!谢谢.

Oracle连接和用户、权限-12c

ORACLE 12C使用 orcl数据库服务器连接字符串 启动和关闭[12c 有误] C:\Users\***>sqlplus /nolog SQL*Plus: Release 12.1.0.1.0 Production on 星期日 3月 15 12:56:57 2015 Copyright (c) 1982, 2013, Oracle. All rights reserved. SQL> 启动oracle: SQL> startup open; 关闭oracle: S

使用Navicat for Oracle新建表空间、用户及权限赋予

前篇文章我介绍了有关Navicat for SQLServer的使用方法,今天我再来介绍它的同门师兄弟Navicat for Oracle. Navicat for Oracle是有关Oracle数据库的客户端工具.通过这个客户端,我们可以图形方式对Oracle数据库进行操作. 说明我们此次试验的Oracle数据库版本是Oracle 10G Express Edition,也即是我们平时所说的Oracle XE版本.此版本对于,我们学习来说已经是足够了.我们只要知道一般我们使用的Oracle数据

查看oracle数据库的连接数以及用户 (转:http://blog.itpub.net/24558279/viewspace-752293/)

11.查询oracle的连接数2select count(*) from v$session;32.查询oracle的并发连接数4select count(*) from v$session where status='ACTIVE';53.查看不同用户的连接数6select username,count(username) from v$session where username is not null group by username;74.查看所有用户:8select * from a

通过oracle数据库链执行DML需要什么权限

对于本地的用户,执行INSERT操作只需要INSERT权限,而只有INSERT权限这对于通过数据库链执行插入操作是不够的. 看Oracle的管理员手册是发现了这个问题,以前还确实没有注意过. 看一个具体的例子,首先在本地建立一个普通用户,并将表T的INSERT.UPDATE和DELETE权限授权给这个用户: SQL> show user USER is "TEST" SQL> create table t (id number); Table created. SQL>

取消Oracle数据库密码期限 取消用户锁定

1.首先查用户被锁时间:sql>select username,account_status,lock_date from dba_users where username='SA'; 2.解锁:sql>alter user SA account unlock; 3.修改容许错误连接次数未无限大:sql>alter profile default limit FAILED_LOGIN_ATTEMPTS UNLIMITED; ps:疑点是修改完密码后,有其他的人还在用错误的密码登陆导致超过

Oracle数据库的连接

oracle|数据|数据库   string ConnectionString="user id=ordtrc;pwd=ordtrc;data source=\"FRAME2DB\";persist security info=False;";//写连接串   OracleConnection conn=new OracleConnection(ConnectionString);//创建一个新连接    try   {    conn.Open();    Ora