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文件中查找PORT与SERVICE_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;
注意:对用用户的创建,权限的分配,只有管理员才能够操作,普通用户不能实现.
登录简单总结
l SQL Plus 登录的几种不同方式
• sqlplus 根据提示输入用户名、密码
• sqlplus 用户名/密码 (本机登录)
• sqlplus 用户名/密码@网络服务名 (远程登录)
• sqlplus / as sysdba (以sysdba身份登录,用户实际为sys)
总结:
创建用户
切换到system管理员中 以system管理员进行登录
1、Create user 用户名 identified by 密码;(不能是全数字)
2、grant create session,create table,resource to 用户名;//给用户分配权限