论坛首页 综合技术论坛

Oracle中的数据类型和SQL语句详解

浏览 2863 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-04-11  

     Oracle远程数据库的连接和用户操作

 1远程数据库的连接

    --前提:1、在客户端程序必须安装oracle客户端程序

            2、服务器端的防火墙必须关闭 因为oracle采用的是TCP/IP协议的。

            3、需要添加全局配置,修改配置文件

C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN\tnsnames.ora

network\admin\找到tnsnames.ora配置文件内容如下:

XE =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = PC-201009100931)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = XE)

    )

  )

EXTPROC_CONNECTION_DATA =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))

    )

    (CONNECT_DATA =

      (SID = PLSExtProc)

      (PRESENTATION = RO)

    )

  )

 

ORACLR_CONNECTION_DATA = 

  (DESCRIPTION = 

    (ADDRESS_LIST = 

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE)) 

    ) 

    (CONNECT_DATA = 

      (SID = CLRExtProc) 

      (PRESENTATION = RO) 

    ) 

  ) 

XE是默认的全局名称PROTOCOL = TCP 协议

HOST = PC-201009100931 本机的名称

PORT = 1521 oralce的端口号

如果需要采用远程连接需要配置一个全局的连接属性

teacher =

  (DESCRIPTION =

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

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = csdn.cn)

    )

  )

teacher是随意起的全局名称 注意:名称不能重复

HOST = 192.168.1.100 是远程局连接的IP地址

PORT = 1521是远程连接的端口号.必须一致。

SERVICE_NAME = csdn.cn 是远程连接服务的名称.必须一致。

备注:可以到服务端的tnsnames.ora文件中查找PORTSERVICE_NAME

注意:以上配置teacher之前不能有空格否则会有异常信息。

 

2当远程客户连接服务器时,服务器端的OracleXETNSListener的监听必须启动

   打开方式---管理工具--服务中---查找OracleXETNSListener并启动程序。   

--sqlplus远程连接命令

     sqlplus 服务器端的用户名/密码@全局数据库名称

     sqlplus 服务器端的用户名/密码@teacher;即可。

,3、创建用户命令

 A、连接到用户SQL> conn system/root

B、创建用户: SQL> create user scott identified by tiger;

C、切换用户:SQL> conn scott/tiger    //用户切换失败

Not logged on

  备注:出现用户没有session权限的提示.

所以应当分配session权限

,4、分配权限

grant 权限名 to 用户名;

SQL> conn system/root;//第一步切换到管理员

SQL> grant create session to scott; //为用户受权

Grant succeeded//受权成功

备注当受权成功后,scott就可以登录,但是登录后,当用户创建表时,也会出现权限不足.然在oracle中是通过用户的角色来给用户分配权限的.详细参考9角色

 

,5、角色(一个角色包含多个权限)

connect

   create session

   create table

   ……

 resource 

    对表空间使用权限

    ……

   grant connect,resource to scott;

注意:对用用户的创建,权限的分配,只有管理员才能够操作,普通用户不能实现.

 

 

登录简单总结

SQL Plus 登录的几种不同方式 

• sqlplus 根据提示输入用户名、密码

• sqlplus 用户名/密码 (本机登录

• sqlplus 用户名/密码@网络服务名 (远程登录)

• sqlplus / as sysdba (sysdba身份登录,用户实际为sys) 

 

   总结:

   创建用户

    切换到system管理员中 以system管理员进行登录    

    1Create user 用户名 identified by 密码;(不能是全数字)

    2grant create session,create table,resource to 用户名;//给用户分配权限

 

 

<!--EndFragment-->
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics