Oracle19c创建数据库与表空间
一、创建数据库
1、打开Database Configuration Assistant
2、数据库操作:选择“穿件数据库”,并下一步
3、创建模式:选择“高级配置”,并下一步
4、部署类型:数据库类型默认“单实例数据库”即可,模板选择“一般用途或事务处理”
5、数据库标识:可修改“全局数据库名”与“SID”,他俩可以一致;取消勾选“创建为容器数据库”
6、存储选项:默认即可
7、快速恢复选项:选择“指定快速恢复区”
8、网络配置:默认
9、Data Vault 选项:需要的可自行配置,一般是不需要配置,默认即可
https://www.jianshu.com/p/2afc0a6f8f7e可参考这里了解
10、配置选项:
(1)默认即可
(2)示例方案:可勾选,用于学
(3)其他默认即可
11、管理选项:默认
12、用户身份证明:用于登录数据库
(1)可分别为sys和system创建口令 (2)可以设置统一口令(我选这个)
口令必须有大、小写字母和数字,再输入主目录口令在
13、创建选择:创建数据库
14、概要:前面没问题,就会出现。点击完成即可
15、进度页:完成关闭即可
至此,创建oracle数据成功
二、创建表空间
1、打开SQL Plus
2、输入: sys as sysdba 以及口令
3、创建
create tablespace tablespace_name
datafile ‘路径’ size 大小
[autoextend on next 大小]
[maxsize 大小]
三、创建用户
oracle数据库的权限系统分为系统权限与对象权限。
- 系统权限( database system privilege )
可以让用户执行特定的命令集。例如,create table权限允许用户创建表,grant any privilege 权限允许用户授予任何系统权限。 - 对象权限( database object privilege )
可以让用户能够对各个对象进行某些操作。例如delete权限允许用户删除表或视图的行,select权限允许用户通过select从表、视图、序列(sequences)或快照(snapshots)中查询信息。
- 创建\删除用户
打开cmd:
cmd>
sqlplus /nolog
SQL>
connect / as sysdba
CREATE USER utest (用户名) IDENTIFIED BY upassword(密码)
DEFAULT TABLESPACE test(创建的表空间名) TEMPORARY TABLESPACE temp;(临时表空间就写temp即可);// 创建用户
alter user user1 identified by 234556; // 修改用户密码
drop user user1; // 撤销用户
- 为用户授权角色\撤销授权
-
oracle提供三种标准角色(role):connect/resource和dba.
-
connect role(连接角色)
临时用户,特指不需要建表的用户,通常只赋予他们connect role.
connect是使用oracle简单权限,这种权限只对其他用户的表有访问权限,包括select/insert/update和delete等。
拥有connect role 的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym)、回话(session)和其他 数据的链(link)。 -
resource role(资源角色)
更可靠和正式的数据库用户可以授予resource role。
resource提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。 -
dba role(数据库管理员角色)
dba role拥有所有的系统权限
对象权限分类:select, update, insert, alter, index, delete, all
grant connect, resource to user1; // 将connect, resource权限给予user1
revoke connect, resource from user; // 对user1的connect, resource权限销毁
- 导入数据库
oracle如何导入表到本地数据库?
步骤一:打开cmd;
步骤二:输入:imp 用户名/密码 BUFFER=64000 file=数据库表.dmp存放的地址 ignore=y full=y
说明:ignore=y是表示忽略创建错误,继续后面的操作;full=y表示导入文件中的全部内容,有可能有多个用户的内容,如果你链接的用户默认使用的表空间设置是system,则导入文件的内容会导到system上。
imp test/test BUFFER=64000 file=D:/user.dmp ignore=y full=y
- oracle如何导出表?
步骤一:打开cmd;
步骤二:语法: exp 用户名/密码@服务名 tables=表名 file=存入本地dmp目标地址 log=存入本地log目标地址 owner=要导出的用户名 - 导出表:exp test/test@orcl tables=sys_user file=D:/user.dmp log=D:/user.log
- 导出数据库:去掉“ tables=表名 “ 就好!
exp test/test@orcl file=D:/user.dmp log=D:/user.log - 导出该用户的数据库 :exp test/test@orcl file=D:/user.dmp log=D:/user.log owner=test
温馨提示:oracle 11g空表不能exp导出问题,参考解决方案课