目录
一、Oracle监听器
(一)Oracle监听器的作用
(二)Oracle监听器的目录
二、Oracle安装成功后默认的三个用户——sys、system、普通用户(normal)
1.查看当前数据库命令
2.查看Oracle的版本号
3.conn /as sysdba
三、Oracle创建新用户密码并赋予权限命令
1.使用system用户进入后,创建新用户和密码
2.给新用户赋予权限:
3.使用新用户登录:
4.新用户通过Datagrip远程连接Oracle:
四、DBA可以赋予的三种标准角色
1.Connect 角色
2.Resoure角色
3.DBA角色
五、给Scott用户解锁,并给普通用户重新设置密码
1.给scott默认用户解锁并重设密码为tiger
2.修改普通用户的密码
六、创建表空间
1.查看当前用户默认表空间
2.创建表空间
3.修改普通用户默认的表空间
4.修改表空间的名字
5.删除表空间
七、Datagrip中操作注意事项
书接上回
CentOS7中安装Oracle的详细步骤_雷神乐乐的博客-CSDN博客
# 打开虚拟机,设置开启监听
# 连接
SQL> connect / as sysdba
SQL> startup
SQL> connect system@prod
SQL> select name from v$database;
Oracle监听器listener是一个重要的数据库服务器组件,在整个Oracle体系结构中,扮演着重要的作用。
oracle监听器的功能_kk121150的博客-CSDN博客_oracle监听的作用
1、监听客户端请求。监听器守候在服务器制定端口(默认为:1521),监听客户端的请求。
2、为客户端请求分配Server Process。通过一个服务进程Server Process(也称为影子进程)作为代理。监听器接受到请求之后,就向操作系统(或者Dispatcher组件)要求fork(或分配)一个Server Process与客户端相连。
3、注册实例服务。目前Oracle版本中,提供动态注册和静态注册两种方式。
4、错误转移failover。在数据库实例崩溃的时候,可以自动将请求转移到其他可用实例上的一种功能。可以提供很大程度上的可用性(Availability)功能。这个过程中,发现实例已经崩溃,并且将请求转移到其他实例上。
5、负载均衡衡量。当一个客户请求到来时,Oracle会根据当前RAC集群环境中所有实例的负载情况,避开负载较高的实例,将请求转移到负载较低的实例进行处理。
在命令行窗口(CMD),输入lsnrctl,就可以进入监听器控制窗口。
监听器的行为受到参数文件的控制,我们有时候需要调整监听器的参数。调整监听参数的方法,可以通过Oracle提供的GUI界面完成,还可以通过手工修改listener.ora来完成。
oracle 中的lsnrctl命令
在启动、关闭或者重启oracle监听器之前确保使用lsnrctl status命令检查oracle监听器的状态:
1、$lsnrctl status:检查当前监听器的状态
2、$lsnrctl start [listener-name] 启动所有的监听器,可以指定名字来启动特定的监听器
3、$lsnrctl stop [listener-name] 关闭所有的监听器,可以指定名字来关闭特定的监听器
4、$lsnrctl reload 重启监听器,此命令可以代替lsnrctl stop,lsnrctl start
5、lsnrctl hep 可以显示所有可用的监听器命令
Oracle安装成功后默认的三个用户 - AKX - 博客园
1.SYS用户:超级管理员,权限最高,它的角色是DBA(数据库管理员)。默认密码是change_on_install。具有创建数据库的权限。
2.SYSTEM用户:系统管理员,权限很高,它的角色是DBA operator(数据库管理员操作者),默认密码manager。不具有创建数据库的权限!
3.普通用户(normal),如系统安装时的scott用户,默认密码是tiger。普通用户的权限是SYS用户或SYSTEM用户给的,如果没有给,那普通用户连很基本的访问权限,连接权限也没有。
SQL> select name from v$database;
SQL> select * from v$version;
conn /as sysdba 详解_weixin_33736832的博客-CSDN博客
在用conn /as sysdba登录时,oracle会进行操作系统验证,发现你当前登录的用户就属于ora_dba组,就可以不输入密码登录。而sqlplus /nolog是另外的用法了,nolog表示不进行登录,仅仅是进入sqlplus软件而已。
注意:操作时尽量用system来操作
[oracle@localhost ~]$ sqlplus / as sysdba
[oracle@localhost ~]$ sqlplus system/oracle as sysdba
# 上面两种写法一样
SQL> connect system@prod
Enter password:
Connected.
SQL> create user zhangsan identified by zhangsan;
User created.
SQL> grant connect,resource,dba to zhangsan;
Grant succeeded.
SQL> connect zhangsan@prod
Enter password:
Connected.
connect、resource和dba三种标准角色:
授权语句:
grant connect ,resource,dba to user with admin option;
(注意:其中的“with admin option”选项的含义是权限转授,该用户user能把他得到的这个权限再转授给其他用户user。)经过授权以后,用户拥有connect、resource和dba三个角色的权限:
是授予最终用户的典型权利,最基本的权利,能够连接到Oracle数据库中,并在对其他用户的表有访问权限时,做SELECT、UPDATE、INSERTT等操作。
- Alter session--修改会话;
- Create cluster--建立聚簇;
- Create database link--建立数据库连接;
- Create sequence--建立序列;
- Create session--建立会话;
- Create synonym--建立同义词;
- Create view--建立视图。
是授予开发人员的,能在自己的方案中创建表、序列、视图等。
- Create cluster--建立聚簇;
- Create procedure--建立过程;
- Create sequence—建立序列;
- Create table--建表;
- Create trigger--建立促发器;
- Create type--建立类型。
是授予系统管理员的,拥有该角色的用户就能成为系统管理员了,它拥有所有的系统权限。
ORACLE grant权限 - 走看看
oracle常用指令-grant权限_走哪儿学哪儿的博客-CSDN博客_oracle grant
ORACLE grant权限 - Snowfun - 博客园
scott用户默认是锁住的,需要给他解锁
SQL> connect system@prod
Enter password:
Connected.
SQL> alter user scott account unlock;
User altered.
# 用默认用户scott登录
SQL> connect scott@prod
# 输入密码tiger
Enter password:
ERROR:
ORA-28001: the password has expired
# 此时需要输入新密码,设置密码为tiger
Changing password for scott
New password:
Retype new password:
Password changed
Connected.
# 查询scott用户的表
SQL> select table_name from user_tables;
TABLE_NAME
------------------------------
SALGRADE
BONUS
EMP
DEPT
# 查看当前用户
SQL> show user;
USER is "SCOTT"
# 查看其中一个表内容
SQL> select * from dept;
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
# 修改用户密码
# 首先登录system
SQL> connect system@prod
Enter password:
Connected.
# 重设用户密码,重设用户密码的前提是要知道账号
SQL> alter user zhangsan identified by 123456;
User altered.
Oracle 表空间(tablespace)介绍_软件开发技术爱好者的博客-CSDN博客_oracle表空间
select tablespace_name,(sum(bytes)/1024/1024) tablespace_size from dba_data_files group by tablespace_name;
# 创建表空间
SQL> connect system@prod
Enter password:
Connected.
# 表空间默认大小是50M
SQL> create tablespace ts1 datafile '/home/oracle/ts1.dbf' size 50M;
Tablespace created.
创建表空间后在对应目录下会显示
# 登录普通用户
SQL> connect zhangsan@prod
Enter password:
Connected.
# 设置默认表空间
SQL> alter database default tablespace ts1;
Database altered.
alter tablespace ts1 rename to tss;
注意:因为之前将用户默认的表空间是新建的tts,不可以直接删除默认的表空间,会报错
# 重新设定表空间
alter database default tablespace users;
# 删除表空间
drop tablespace tts including contents and datafiles;
回到根目录就没有这个表空间了
与Mysql不同,oracle的数据如果不提交,就不会保存,重启后数据会丢失,而Mysql中的事务是默认自动提交的。