oracle11g数据库监听服务的端口为1521, web控制台的端口为5500
在web控制台中重启数据库时要输的用户名和密码.
指定操作系统的用户名和口令, 以登录到目标数据库计算机。
用户名: <win> administrator / <unix/linux> root
口令 : 密码
再下面还需输数据库的验证
用户名:数据库的用户,必需为sysdba的用户 如(sys)
口令: 你设的密码
首先要在本机装oracle的客户端程序,然后配监听.
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
Code
Oracle提供两种验证方式,一种是OS验证,另一种密码文件验证方式,如果是第一种方式用以下方法修改密码:
sqlplus /nolog
connect / as sysdba
alter user sys identified by 新密码;
alter user system identified by 新密码;
如果是第二种方法用以下方法修改密码:
orapwd file=pwdxxx.ora password=你设定的新密码 entries=10
设定完后,重新启动服务,再次登陆就可以了。
-------------------------------------
显示当前用户
show user
给帐户解锁
alter user username account unlock
-----username要解锁的用户
===========用PLSQL客户端连接=oracle11G==================
conn 用户名/密码@IP:端口/数据库服务名
如: conn wangjun/123456@10.11.3.103:1521/orcl报错:
ORA-28009 Connection AS/TO SYS should be as sysdba or sysoper;
每次用到oracle的plsql用sys登录都会遇到
ora-28009错误,查了一下好像事下面的问题.
原因:用SYS用户登录数据库时,语法与其它操作用户写法不同,必须写明登录权限。
解决方法:使用正确的书写方式。
例如:SYS/口令@服务名 AS SYSDBA;
conn sys/12345@10.11.1.111:1521/orcl as sysdba 这样我在 plsql登录界面 服务名的后面 加上 as sysdba
就可以登录了. |
报错:
出错:ORA-01950:no privileges on tablespace 'USERS'
问题:没有分配表空间配额:
SQL>conn sys/password as sysdba;
SQL>alter user myuser quota 10M on users;
或
SQL>alter user myuser quota unlimited on users;
在sys下给其它用户加权限
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
Code
[以下来自网上]
sys用户下:
grant select on v_$mustat to tkyte;(使用户tkyte可以搜索表v$mystat)
以下为(转):
Oracle学习笔记一
http://esteem.javaeye.com/blog/216544
首先在开始--》运行——》cmd,然后输入 sqlplus sys/密码 as sysdba
以sys权限登陆进去
然后可以进行操作、:
创建用户 create user test indentified by test;
这样就创建了一个用户名密码都为test的用户
但这个时候test还是不能登陆成功的,我们需要赋予相应的权限
首先赋予create session,connect的权限
grant create session to test;
这样test用户就能成功登陆进去
但是此时用户还是不能创建表 我们需要赋予用户创建表的权限:
grant create table to test;
但是用户此时还不能创建表 因为需要有使用表空间的权限(相当于 用户有了进房间的钥匙 但是没有进大门的钥匙。。。)
所以也应该赋予相应的权限
grant unlimited tablespace to test;
这个时候用户就拥有了创建表的权限 由于表是用户test的 相应的他就拥有了对创建的表的增删查改的权限了
我们要查看用户拥有什么权限可以通过查询一个系统的视图(数字字典)
select * from user_sys_privs;
这样就可以知道当前用户的权限
撤销权限 revoke create table from test;
场景:
用户test 用户test1
test1的用户创建了个表mytab 并且插入了一些数据
那么 test用户是否可以访问到test1的mytab怎么访问?
答:不可以,必须先授权
test1必须授权给test :grant select on mytab to test;
那么这个时候test可以通过 select * from test1.mytab;来访问mytab中的数据
如果想把某个表(对象)的所有权限都赋予给test那么可以:
grant all on mytab to test;
撤销所有权限
revoke all on mytab to test;
总结
对于系统权限由sys来做
对于对象权限由 谁拥有谁授权
系统权限:
grant create session to test;
grant create table to test;
grant unlimited tablespace to test;
revoke create session from test;
revoke create table from test;
revoke unlimited tablespase from test;
grant create session to public; //表示把创建表的权限赋予所有人
select * from user_sys_privs; //返回当前用户的所有系统权限
对象权限
grant select on mytab to test;
grant all on mytab to test;
revoke select on mytab from test;
revoke all on mytab from test;
select * from user_tab_privs; //返回当前用户所有的对象权限
对象权限可以控制到列
grant update(name) on mytab to test;
grant insert(id) on mytab to test;
select * from user_col_privs;
注意、:查询和删除不能控制到列
需要有commit的 insert update insert
权限的传递
系统权限的传递:
grant alter table to A with admin option;
那么A可以通过把该权限传递给B,如果想B也可以传递下去那么可以也带上with admin option
grant alter table to B;
对象权限的传递:
grant select on mytab to A with grant option;
那么A可以把在表mytab的select权限赋予给B,如果B想也能传递该select权限也可以带上with grant option
grant select on mytab to B;