|
就是在已有的数据库实例上创建一个新的帐号,访问一些新的表
操作步骤如下:
1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)
2、以sysdba方式来打开sqlplus,命令如下:sqlplus "/as sysdba"
3、查看我们常规将用户表空间放置位置:执行如下sql:
selectnamefromv$datafile;
上边的sql一般就将你的用户表空间文件位置查出来了。
4、创建用户表空间:
CREATETABLESPACENOTIFYDBDATAFILE/oracle/oradata/test/notifydb.dbfSIZE200MAUTOEXTENDONEXTENTMANAGEMENTLOCALSEGMENTSPACEMANAGEMENTAUTO;
5、创建用户,指定密码和上边创建的用户表空间
CREATEUSERhc_notifyIDENTIFIEDBYhc_passwordDEFAULTTABLESPACENOTIFYDB;
6、赋予权限
grantconnect,resourcetohc_notify;grantunlimitedtablespacetohc_notify;grantcreatedatabaselinktohc_notify;grantselectanysequence,creatematerializedviewtohc_notify;
经过以上操作,我们就可以使用hc_notify/hc_password登录指定的实例,创建我们自己的表了
续:
创建临时表空间:
createtemporarytablespacetest_temp
tempfileF:appthinkoradataorcltest_temp01.dbfsize32mautoextendonnext32mmaxsize2048mextentmanagementlocal;
创建表空间:
createtablespacetest_dataloggingdatafileF:appthinkoradataorcltest_data01.dbfsize32mautoextendonnext32mmaxsize2048mextentmanagementlocal;
创建用户:
createuserjackidentifiedbyjackdefaulttablespacetest_datatemporarytablespacetest_temp;
为用户赋予权限:
GRANTcreateanytableTOjack;GRANTresource,dbaTOjack;GRANTselectanytableTOjack;
第一个是授予所有table有create权限,第三是授予所有table有select权限.
第二个就是赋予DBA的权限,这才是最重要的,其实只要第二就可以了.
1.connect role(连接角色)2. resource role(资源角色)3. dba role(数据库管理员角色)
四:删除用户表空间的步骤:
Altertablespace表空间名称offline;Droptablespace表空间名称;(表空间无有数据时用)
或者
droptablespace表空间名称includingcontents;(表空间下有数据时候用)
temporary tablespace是oracle里临时表空间,临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完 成之后系统会自动清理。当oracle里需要用到sort的时候,而pga又没有足够大的时候,将会把数据放入临时表空间里进行排序,同时如果有异常情况 的话,也会被放入临时表空间,但是我们需要重建temporary tablespace,直接是不能drop默认的临时表空间的,不过我们可以通过以下方法来做。
查看目前的temporary tablespace
SQL
|
|