linux下创建oracle用户表空间
Linux下Oracle导入dmp文件

Linux下向oracle数据库倒入dmp包的方式1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)2、以sysdba方式来打开sqlplus,命令如下:sqlplus "/as sysdba"3、查看常规将用户表空间放置位置:执行如下sql: select name from v$datafile; 上边的sql一般就将你的用户表空间文件位置查出来了。
4、创建用户表空间:CREATE TABLESPACE 表空间名DATAFILE '/oracle/oradata/test/notifydb.dbf(表空间位置)' SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;5、创建用户,指定密码和上边创建的用户表空间 CREATE USER 用户名 IDENTIFIED BY 密码 DEFAULT TABLESPACE 表空间名;6、赋予权限grant connect,resource to 用户名;grant unlimited tablespace to用户名;grant create database link to用户名;grant select any sequence,create materialized view to用户名; 经过以上操作,我们就可以使用用户名/密码登录指定的实例,创建我们自己的表了续:创建临时表空间:create temporary tablespace test_temp tempfile 'F:\app\think\oradata\orcl\test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; 创建表空间: create tablespace test_data logging datafile 'F:\app\think\oradata\orcl\test_data01.dbf' size 32mautoextend on next 32m maxsize 2048m extent management local; 创建用户:create user jack identified by jack default tablespace test_data temporary tablespace test_temp;为用户赋予权限:GRANT create any table TO jack;GRANT resource,dba TO jack;GRANT select any table TO jack;第一个是授予所有table有create权限,第二个就是赋予DBA的权限,这才是最重要的,其实只要第二就可以了.第三是授予所有table有select权限.四:删除用户表空间的步骤:Alter tablespace 表空间名称 offline;Drop tablespace 表空间名称;(表空间无有数据时用) 或者 drop tablespace 表空间名称 including contents;(表空间下有数据时候用temporary tablespace是oracle里临时表空间,临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。
oracle 创建用户 及dmp文件导入

连接sha用户connect sha/admin可以创建别的用户5、查看用户权限进入sha用户connect sha/adminSelect * from user_sys_privs;可以查看到一个列表,列代表用户名权限是否可以给别的用户附加权限(N 、Y)行代表权限都有那些6、撤销用户授予的权限必须连接connect system/admin撤销权限revoke是系统撤销权限的关键词Revoke execute any procedure from sha;7、更改用户密码进入sha用户connect sha/adminPassword 输入旧密码输入新密码俩边OK或者用alter user sha identified by xinmima8、删除用户Connect system/adminDrop user sha;9、为用户授予角色Grant dba to sha;Grant connect to sha;Linux下的plsql 创建用户create user sha identified by adminDefault tablespace userTemporary tablespace temp;Granr unlimited tablespace to sha;//权限Grant dba to sha;//角色Grant connect to sha;准备工作(导出dmp文件)1.使用PL/SQL 工具--》导出用户对象,导出用户所有表,视图,存储过程等的定义2.使用PL/SQL 工具--> 导出表,导出所有表的数据这就是那个dmp文件保存好导出的sql脚本和dmp文件准备导入好了,开始导入1.删除用户drop user test cascade;2.删除全部表空间drop tablespace testdb INCLUDING CONTENTS;drop tablespace testdb_index INCLUDING CONTENTS;drop tablespace testdb_temp INCLUDING CONTENTS;3.重新创建表空间和用户并给用户授权CREATE TABLESPACE "DB_QQTB"LOGGINGDATAFILE 'D:\oracle\OraData\DB_QQTB01.ora' SIZE 2000M,'D:\oracle\OraData\DB_QQTB02.ora' SIZE 2000M, 'D:\oracle\OraData\DB_QQTB03.ora' SIZE 2000M EXTENT MANAGEMENT LOCALSEGMENT SPACE MANAGEMENT AUTO/CREATE TABLESPACE "DB_QQTB_INDEX"LOGGINGDATAFILE 'D:\oracle\OraData\DB_QQTB_INDEX.ora' SIZE 500M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO/CREATETEMPORARY TABLESPACE "DB_QQTB_TEMP" TEMPFILE'D:\oracle\OraData\DB_QQTB_TEMP.ora' SIZE 200M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M/create user FZCXidentified by "FZCX"default tablespace DB_QQTBtemporary tablespace DB_QQTB_TEMPprofile DEFAULTquota unlimited on DB_QQTB。
linux下创建oracle表空间

linux下创建oracle表空间1 、登录服务器2 、查看磁盘空间是否够⼤df -h-h更具⽬前磁盘空间和使⽤情况以更易读的⽅式显⽰ [root@rac1 ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 2.9G 2.3G 521M 82% / none 209M 0 209M 0% /dev/shm /dev/sda2 4.5G 1.8G 2.5G 42% /u01 /dev/sde1 512M 80M 433M 16% /ocfs -H根上⾯的-h参数相同,不过在根式化的时候,采⽤1000⽽不是1024进⾏容量转换 [root@rac1 ~]# df -H Filesystem Size Used Avail Use% Mounted on /dev/sda1 3.1G 2.4G 546M 82% / none 219M 0 219M 0% /dev/shm /dev/sda2 4.8G 1.9G 2.7G 42% /u01 /dev/sde1 537M 84M 454M 16% /ocfs -k以单位显⽰磁盘的使⽤情况 [root@rac1 ~]# df -k Filesystem 1K-blocks Used Available Use% Mounted onsu - oracle 切换到oracle⽤户(linux的⼀个⽤户名)3 、在/home/oracle/oradata ⽬录下新建⼀个⽂件夹,后⾯创建表空间需要⽤到cd /home/oracle/oradatamkdir abc4 、 sqlplus / as sysdba (以dba⾝份登录数据库,系统的超级⽤户)5 、创建临时表空间创建⽤户前必须要先创建临时表空间和数据库表空间两个表空间,否则⽤系统默认的表空间不好。
create temporary tablespace abc_temp tempfile '/home/oracle/oradata/abc/abc_temp.dbf' size 512m autoextend on next 100m maxsize 1024m extent management local;说明:1)abc_temp 临时表空间名字2)/home/oracle/oradata/abc 存放数据库⽂件的地⽅,⼀般是安装数据库后有控制⽂件,数据⽂件和⽇志⽂件的⽂件夹,再加上要创建表空间的名字+dbf (数据⽂件)3)512m 表空间的初始⼤⼩4)100m 表空间的⾃动增长⼤⼩5)1024m 表空间最⼤的⼤⼩6 、创建数据表空间create tablespace abc logging datafile '/home/oracle/oradata/abc/abc.dbf' size 512m autoextend on next 100m maxsize 1024m extent management local;7 、创建⽤户并指定表空间create user abc identified by abc default tablespace abc temporary tablespace abc_temp;注:create standardtable.sql 创建表8 、给⽤户授予权限grant dba to abc; (给abc ⽤户授予了dba 所有权限)9 、删除⽤户以及⽤户所有的对象drop user zfmi cascade;cascade 参数是级联删除该⽤户所有对象,经常遇到如⽤户有对象⽽未加此参数则⽤户删不了的问题,所以习惯性的加此参数删除oracle ⽤户nim 出现下⾯的错误:SQL> drop user nim cascade;drop user nim cascade* ERROR 位于第 1 ⾏:ORA-00604: 递归 SQL 层 1 出现错误ORA-24005: 必须使⽤ DBMS_AQADM.DROP_QUEUE_TABLE 删除队列表处理⽅式:先执⾏这条语句:alter session set events'10851 trace name context forever,level 2';再执⾏:drop user nim cascade; 删除⽤户nim10、删除表空间前提:删除表空间之前要确认该表空间没有被其他⽤户使⽤之后再做删除drop tablespace nimeng including contents and datafiles cascade constraints ;including contents 删除表空间中的内容,如果删除表空间之前表空间中有内容,⽽未加此参数,表空间删不掉,所以习惯性的加此参数including datafiles 删除表空间中的数据⽂件cascade constraints 同时删除 tablespace 中表的外键参照如果在清除表空间之前,先删除了表空间对应的数据⽂件,会造成数据库⽆法正常启动和关闭。
linux系统oracle 数据库创建实例

linux系统oracle 数据库创建实例在Linux系统上创建Oracle数据库实例,可以按照以下步骤进行操作:1. 安装Oracle数据库软件。
首先,下载适用于Linux系统的Oracle数据库软件,并按照安装步骤进行安装。
2. 设置环境变量。
将Oracle数据库软件的安装路径添加到PATH环境变量中,以便系统可以找到相关的Oracle命令和工具。
3. 创建数据库实例目录。
选择一个合适的目录用于存储数据库实例文件,例如:/u01/app/oracle/oradata/。
4. 使用Oracle用户登录系统。
在Linux系统上创建一个拥有合适权限的Oracle用户,并使用该用户登录系统。
5. 使用dbca命令创建数据库实例。
在终端中输入以下命令启动数据库配置助手(Database Configuration Assistant):dbca6. 选择创建数据库实例选项。
根据实际需求,选择创建新的数据库实例或者基于现有的模板来创建数据库实例。
7. 配置数据库实例参数。
在配置向导中,按照提示设置数据库实例的名称、监听器、字符集、内存大小等参数。
8. 创建数据库。
根据向导的指示,输入数据库管理员(DBA)密码,并完成数据库的创建过程。
9. 启动数据库实例。
使用以下命令启动数据库实例:sqlplus / as sysdba,然后输入startup命令。
10. 验证数据库实例。
输入以下命令验证数据库实例是否成功创建:sqlplus / as sysdba,然后输入select * from v$version命令,查看数据库版本信息。
以上就是在Linux系统上创建Oracle数据库实例的基本步骤。
具体操作可能会因Oracle软件版本和Linux发行版的不同而略有差异,可以根据具体情况进行调整。
linuxoracle创建实例

linuxoracle创建实例在Linux系统上使用Oracle创建实例是一个相对复杂的过程,但是通过一步一步的指导,可以顺利完成。
在本文中,我将向您介绍如何在Linux上使用Oracle创建实例的步骤。
要在Linux系统上使用Oracle创建实例,您需要确保系统已经安装了Oracle数据库软件。
如果您还没有安装Oracle数据库软件,可以通过Oracle官方网站下载并按照官方文档进行安装。
一旦Oracle数据库软件安装完成,接下来就可以开始创建实例了。
首先,您需要登录到Linux系统上的Oracle用户。
然后,使用sqlplus命令连接到Oracle数据库。
在SQL命令行界面上,输入以下命令来创建一个新的实例:CREATE DATABASE myinstanceUSER sys IDENTIFIED BY passwordUSER system IDENTIFIED BY passwordLOGFILE GROUP 1 ('/u01/oradata/myinstance/redo01a.log') SIZE 100M,GROUP 2 ('/u01/oradata/myinstance/redo02a.log') SIZE 100M, GROUP 3 ('/u01/oradata/myinstance/redo03a.log') SIZE 100M MAXLOGFILES 5MAXLOGHISTORY 100MAXDATAFILES 100MAXINSTANCES 1CHARACTER SET utf8NATIONAL CHARACTER SET utf8;在上面的命令中,您需要将myinstance替换为您要创建的实例的名称,password替换为您要设置的密码。
另外,您还可以根据自己的需求修改日志文件的路径和大小,以及数据库的字符集和国家字符集等参数。
Linux系统(X64)安装Oracle11g完整安装图文教程另附基本操作

Linux系统(X64)安装Oracle11g完整安装图⽂教程另附基本操作⼀、修改操作系统核⼼参数在Root⽤户下执⾏以下步骤:1)修改⽤户的SHELL的限制,修改/etc/security/limits.conf⽂件输⼊命令:vi /etc/security/limits.conf,按i键进⼊编辑模式,将下列内容加⼊该⽂件。
oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536编辑完成后按Esc键,输⼊“:wq”存盘退出2)修改/etc/pam.d/login ⽂件,输⼊命令:vi /etc/pam.d/login,按i键进⼊编辑模式,将下列内容加⼊该⽂件。
session required /lib/security/pam_limits.sosession required pam_limits.so编辑完成后按Esc键,输⼊“:wq”存盘退出3)修改linux内核,修改/etc/sysctl.conf⽂件,输⼊命令: vi /etc/sysctl.conf ,按i键进⼊编辑模式,将下列内容加⼊该⽂件fs.file-max = 6815744fs.aio-max-nr = 1048576kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 4194304net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576编辑完成后按Esc键,输⼊“:wq”存盘退出4)要使 /etc/sysctl.conf 更改⽴即⽣效,执⾏以下命令。
LINUX下Oracle数据库用户创建方法详解

LINUX下Oracle数据库⽤户创建⽅法详解本⽂实例分析了LINUX下Oracle数据库⽤户创建⽅法。
分享给⼤家供⼤家参考,具体如下:1)登录linux,以oracle⽤户登录(如果是root⽤户登录的,登录后⽤ su - oracle命令切换成oracle⽤户)2)⾸先要打开监听器命令如下:lsnrctl start,然后sqlplus /nolog ,然后conn /as sysdba,然后startup(这⼀部分命令是⽤来打开oracle数据库)3)查看我们常规将⽤户表空间放置的位置:执⾏如下sql:SQL> select name from v$datafile;NAME--------------------------------------------------------------------------------E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBFE:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBFE:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBFE:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBFE:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF5 rows selected或者下⾯的sql语句:SQL> select status,fuzzy,tablespace_name,name from v$datafile_header;STATUS FUZZY TABLESPACE_NAME NAME------- ----- ------------------------------ --------------------------------------------------------------------------------ONLINE YES SYSTEM E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBFONLINE YES SYSAUX E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBFONLINE YES UNDOTBS1 E:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBFONLINE YES USERS E:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBFONLINE YES EXAMPLE E:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF5 rows selected上边的sql⼀般就将你的⽤户表空间⽂件位置查出来了,在这⾥就是'E:\APP\ADMINISTRATOR\ORADATA\ORCL\'。
oracle建立表空间的方法

oracle建立表空间的方法Oracle数据库中建立表空间的方法主要有两种:一种是通过SQL命令的方式,另一种是通过Oracle客户端Enterprise Manager Console来创建。
通过SQL命令的方式创建表空间,需要先创建临时表空间和数据表空间,然后创建用户并指定表空间。
具体步骤如下:1. 创建临时表空间。
可以通过以下命令创建:```sqlcreate temporary tablespace user_temptempfile 'D:\oracle\oradata\Oracle9i\user_'size 50m autoextend on next 50mmaxsize 20480mextent management local;```2. 创建数据表空间。
可以通过以下命令创建:```sqlcreate tablespace user_dataloggingdatafile 'D:\oracle\oradata\Oracle9i\user_'size 50m autoextend on next 50mmaxsize 20480mextent management local;```3. 创建用户并指定表空间。
可以通过以下命令创建用户并将表空间指定给该用户:```sqlcreate user username identified by password;grant create session, create tablespace to username;alter user username default tablespace user_data temporary tablespace user_temp;```通过Oracle客户端Enterprise Manager Console来创建表空间,可以通过以下步骤完成:1. 打开Oracle客户端Enterprise Manager Console。
linux oracle数据库创建实例

linux oracle数据库创建实例Linux是一种开源的操作系统,广泛应用于各个领域。
Oracle数据库是一种功能强大的关系型数据库管理系统,被广泛用于企业级应用。
本文将介绍如何在Linux操作系统上创建Oracle数据库实例。
在开始创建Oracle数据库实例之前,需要确保已经安装了Linux操作系统,并且具备root权限。
另外,还需要下载并安装Oracle数据库软件包。
安装过程比较复杂,这里不再赘述。
假设已经完成了这些准备工作,我们可以开始创建Oracle数据库实例了。
在Linux系统上登录root账号,打开终端窗口。
然后,切换到oracle用户,这是一个专门用于管理Oracle数据库的用户。
可以使用以下命令切换到oracle用户:```su - oracle```接下来,需要设置一些环境变量,以便正确运行Oracle数据库。
可以在oracle用户的主目录下的.bash_profile文件中添加以下内容:```export ORACLE_SID=orclexportORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1 export PATH=$ORACLE_HOME/bin:$PATH```在设置完环境变量后,需要执行以下命令使其生效:```source .bash_profile```接下来,使用以下命令创建一个新的Oracle数据库实例:```dbca```执行以上命令后,会弹出一个图形界面的向导,引导我们完成数据库实例的创建。
按照向导的提示,依次进行以下设置:1. 选择“创建数据库”选项。
2. 输入数据库名称(例如orcl)。
3. 选择数据库模板,可以选择“通用用途或事务处理”等模板。
4. 设置数据库文件存放的位置。
5. 设置数据库的字符集和国家字符集。
6. 设置数据库管理员密码。
7. 点击“完成”按钮,开始创建数据库实例。
创建数据库实例的过程可能需要一些时间,请耐心等待。
linux服务器oracle创建实例

linux服务器oracle创建实例在Linux服务器上创建Oracle实例是一个关键的步骤,它需要一些独特的步骤和配置。
下面将介绍如何在Linux服务器上创建Oracle 实例的过程。
确保已经正确安装了Oracle数据库软件。
如果还没有安装,请根据官方文档进行安装。
安装完成后,打开终端并以root用户身份登录。
我们需要创建一个新的Oracle用户。
我们可以使用以下命令创建一个名为"oracle"的用户:```useradd -m -d /home/oracle -s /bin/bash oracle```接下来,我们需要切换到oracle用户并设置密码:```su - oraclepasswd oracle```然后,我们需要编辑oracle用户的.bash_profile文件,以配置Oracle环境变量。
使用以下命令打开.bash_profile文件:```vi ~/.bash_profile```在文件的末尾添加以下内容:```export ORACLE_HOME=/opt/oracle/product/12.1.0/dbhome_1 export PATH=$ORACLE_HOME/bin:$PATHexport LD_LIBRARY_PATH=$ORACLE_HOME/libexport ORACLE_SID=orcl```保存并关闭文件。
执行以下命令以使配置生效:```source ~/.bash_profile```接下来,我们需要创建一个新的Oracle实例。
使用以下命令打开Oracle实例创建向导:```dbca```在向导中,选择"创建数据库"选项,并按照向导的指示完成配置。
确保输入正确的数据库名称、SID、字符集和存储位置等信息。
完成配置后,向导将开始创建Oracle实例。
这个过程可能需要一些时间,具体取决于你的系统性能和数据库大小。
创建表空间

创建表空间创建Oracle数据库表空间是数据库管理员经常需要做的一项任务。
Oracle的表空间是用来存储数据库对象的物理存储区域,包括表、索引、视图等等。
在创建表空间时,需要考虑到数据库的性能和安全等因素。
以下是创建Oracle数据库表空间的步骤和注意事项。
步骤一:登录到Oracle数据库在创建表空间前,首先需要登录到Oracle数据库并以管理员身份登录。
可以使用SQL*Plus、SQL Developer等工具进行登录。
步骤二:选择合适的表空间名称和大小根据数据库的需要,选择合适的表空间名称和大小。
表空间名称应该能够反映出该空间的用途,如存储某个特定表或索引。
表空间大小需要根据数据量和增长率进行估计,以便在日后不必频繁地扩展表空间。
步骤三:创建表空间使用CREATE TABLESPACE命令来创建表空间,语法格式如下:CREATE TABLESPACE 表空间名称DATAFILE '存储路径' SIZE 表空间大小LOGGING/NONLOGGINGEXTENT MANAGEMENT {DICTIONARY | LOCAL};其中,表空间名称和大小是必须指定的。
存储路径是指数据文件的存储路径,可以使用相对路径或绝对路径。
LOGGING/NONLOGGING表示该表空间的存储是否记录数据库的日志。
EXTENT MANAGEMENT {DICTIONARY | LOCAL}表示该表空间使用字典管理或局部管理。
例如,以下命令将创建一个名为USR_TAB的表空间,大小为100MB,存储在路径C:\ORACLE\ORADATA\ORCL\USR_TAB01.DBF中,并且记录到数据库日志:CREATE TABLESPACE USR_TABDATAFILE 'C:\ORACLE\ORADATA\ORCL\USR_TAB01.DBF' SIZE 100MLOGGING;步骤四:为表空间添加数据文件使用ALTER TABLESPACE命令为表空间添加数据文件,语法格式如下:ALTER TABLESPACE 表空间名称 ADD DATAFILE '存储路径' SIZE 数据文件大小;其中,表空间名称是要添加数据文件的表空间名称,存储路径和数据文件大小需要指定。
linux下oracle创建实例

linux下oracle创建实例在Linux操作系统下,我们可以使用Oracle数据库来创建实例。
下面将介绍如何在Linux中创建Oracle实例。
我们需要确保已经成功安装了Oracle数据库软件。
安装完成后,我们可以通过以下步骤来创建实例。
1. 进入Oracle软件的安装目录,通常位于/opt/oracle目录下。
在该目录中找到"dbca"命令,它是Oracle数据库配置助手的命令行工具。
2. 打开终端,输入以下命令来启动dbca工具:```$ dbca```3. 在弹出的图形界面中,选择"创建数据库"选项,并点击"下一步"按钮。
4. 在新的界面中,选择"自定义数据库"选项,然后点击"下一步"按钮。
5. 在接下来的界面中,我们需要提供一些关于数据库的基本信息,包括数据库名称、实例名称、监听器端口等。
确保填写的信息准确无误,并点击"下一步"按钮。
6. 在下一个界面中,我们可以选择数据库的字符集、数据库块大小等配置选项。
根据实际需求进行选择,并点击"下一步"按钮。
7. 在接下来的界面中,我们可以选择数据库的管理选项,例如自动备份、自动恢复等。
根据实际需求进行选择,并点击"下一步"按钮。
8. 在新的界面中,我们需要设置数据库的存储选项,包括数据文件、控制文件、日志文件的存储路径等。
根据实际需求进行设置,并点击"下一步"按钮。
9. 在下一个界面中,我们可以选择是否创建初始表空间。
如果需要创建初始表空间,则需要提供表空间的名称、数据文件的路径等信息。
根据实际需求进行选择,并点击"下一步"按钮。
10. 在最后的界面中,我们可以查看并确认数据库的配置信息。
确保信息准确无误后,点击"完成"按钮。
oracle创建表空间和用户授权及删除表空间和删除用户命令

imp pobaoa/oa@orcl file=f:\zyoa0916.dmp full=y ignore=y
imp sjsoa/oa@orcl file=f:/bigoatemp.dmp full=y
2、将d:daochu.dmp中的表table1导入
imp system/manager@TEST file=d:daochu.dmp tables=(table1)
select INSTANCEID,NID,TITLE,NODENAME,ASSIGNER,NODEBEGIN,initiatorname,'办理状态'As blzt from view_wf_todo where actor='%USERID%' order by nodebegin desc
sqlplus / as sysdba
default tablespace bigoa
temporary tablespace temp;
//给用户授予权限
grant connect,resource,dba,CTXAPP,create view to swoa;
以后以该用户登录,创建的任何数据库对象都属于user_temp和user_data表空间,这就不用在每创建一个对象给其指定表空间了
oracle创建表空间和用户授权
SYS用户在CMD下以DBA身份登录:
在CMD中打sqlplus/nolog //匿名登录
然后再conn/as sysdba //以dba身份登录
//创建临时表空间
create temporary tablespace bigoa_temp
linux oracle 命令行建实例

linux oracle 命令行建实例Linux Oracle 命令行建实例一、引言Oracle是一款功能强大的关系型数据库管理系统,广泛应用于企业级应用程序。
在Linux操作系统下,使用Oracle命令行建立实例是一项重要的任务。
本文将介绍如何通过Linux命令行来建立Oracle 实例,并提供详细的步骤和操作指南。
二、环境准备在开始建立Oracle实例之前,需要确保系统已经安装了Oracle数据库,并且已经正确配置了环境变量。
此外,还需要具备管理员权限以执行一些需要特权的操作。
三、创建实例1. 运行命令 "sqlplus / as sysdba" 进入Oracle数据库的命令行界面。
2. 输入命令"create database 实例名称" 来创建一个新的Oracle实例。
请注意,实例名称应该是唯一的,避免与现有的实例冲突。
3. 根据提示输入数据库的相关信息,如数据文件的存储位置、表空间的大小等。
可以根据实际需求进行自定义设置。
4. 完成设置后,系统会自动创建数据库实例,并显示创建成功的信息。
四、配置实例1. 运行命令 "alter database 实例名称 open" 来打开新创建的实例。
2. 输入命令 "alter system set 参数名=参数值 scope=spfile" 来配置实例的参数。
例如,可以通过修改参数 "sga_max_size" 来调整系统的SGA内存大小。
3. 根据实际需求,可以配置多个不同的参数,以优化数据库的性能和稳定性。
五、管理实例1. 使用命令 "alter database 实例名称 backup controlfile to '备份文件路径'" 来备份数据库的控制文件。
控制文件是数据库重要的元数据之一,备份控制文件可以保证数据库的可靠性。
oracle,创建用户,授予用户各种权限;ORA-01939错误;ORA-01950错误;。。。

oracle,创建⽤户,授予⽤户各种权限;ORA-01939错误;ORA-01950错误;。
...3个默认的⽤户:sys orcl [as sysdba]system orclscott tiger创建⽤户:create user gis /*⽤户名*/ identified by gis /*密码*/ ;PRIVILEGE:权限系统权限:grant(revoke) create session to(from) gis;grant(revoke) create table to(from) gis;grant(revoke) unlimited tablespace to(from) gis;grant create seesion to public; #将权限授予所有⽤户。
select * from user_sys_privs; 查看当前⽤户的系统权限。
对象权限:grant(revoke) select on mytable to(from) gis;grant(revoke) all on mytable to(from) gis;select * from user_tab_privs; #查看当前⽤户的表的对象权限:对象权限可以控制到列(只能插⼊和更新控制到列):select * from user_col_privs; #查看当前⽤户的列的对象权限:1) grant update(name) on mytable to sagittys; #在gis⽤户上将mytable表的name列更新权限给sagittys⽤户update gis.mytable set name='laowang' where id=1;commit;2) grant insert(id) on mytable to sagittys;insert into gis.mytable(id) values(7);GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRA HIE----- ------------------------------ ------------------------------ --GIS SAGITTYS SA SAGITTYS FLASHBACK NO NOGIS SAGITTYS SA SAGITTYS DEBUG NO NOGIS SAGITTYS SA SAGITTYS QUERY REWRITE NO NOGIS SAGITTYS SA SAGITTYS ON COMMIT REFRESH NO NOGIS SAGITTYS SA SAGITTYS REFERENCES NO NOGIS SAGITTYS SA SAGITTYS UPDATE #更新 NO NOGIS SAGITTYS SA SAGITTYS SELECT #查询 NO NOGIS SAGITTYS SA SAGITTYS INSERT #插⼊ NO NOGIS SAGITTYS SA SAGITTYS INDEX #索引 NO NOGIS SAGITTYS SA SAGITTYS DELETE #删除 NO NOGIS SAGITTYS SA SAGITTYS ALTER #修改 NO NO(在CMD中默认宽度到头了则不会规则的显⽰,此时将宽度设为400,set linesize 400,就ok了)语⾔分类:1、 DLL,数据定义语⾔CREATE,CREATE TABLE abc(a varchar(10),b char(10));ALTER,ALTER TABLE abc ADD c NUMBER; 加⼀个c的字段,数据符为NUMBER。
oracle数据库的用户以及表空间

oracle数据库的⽤户以及表空间1 2 3 4 5 6最直观的⽅法就是直接在pl/sql⾥查看命令⾏如下查看所有⽤户:select* from all_users;查看表空间:select tablespace_name from dba_tablespaces;查看⽤户具有怎样的⾓⾊:select* from dba_role_privs where grantee='⽤户名';查看某个⾓⾊包括哪些系统权限:select* from dba_sys_privs where grantee='DBA'查看oracle中所有的⾓⾊:select* from dba_roles;1、⾸先,我们可以先建⽴⾃⼰的⼀个⽤户表空间,创建表空间的格式如下:create tablespace test(表空间的名字)datafile 'D:\oracle\product\10.2.0\userdata\test.dbf' (这边可以写成oracle的某个路径下)size 50m (初始⼤⼩)autoextend on;(⾃动扩展)2、接下来,我们可以创建⼀个⾃⼰的⽤户,创建格式如下:CREATE USER utest (⽤户名)IDENTIFIED BY upassword(密码)DEFAULT TABLESPACE test(上⾯创建的表空间)TEMPORARY TABLESPACE temp;(临时表空间就写temp即可)3、然后,我们需要给⾃⼰的⽤户赋予权限来管理⾃⼰的表空间GRANT CONNECT TO utest;GRANT RESOURCE TO utest;GRANT dba TO utest;--dba为最⾼级权限,可以创建数据库,表等。
以上三条语句的执⾏环境都需要进⼊oralce之后cmd下进⼊oracle的⽅式sqlplus system/密码回车即可4、接下来我们就可以将我们的dmp⽂件导⼊到我们⾃⼰的表空间中了,导⼊⽅式imp usename/password@SID full=y file= d:\data\xxxx.dmp ignore=y导⼊实例imp utest/upassword file=D:\20140227.dmp full=y ignore=y (将⽂件导⼊到我们⾃⼰新建的⽤户的表空间中) 注意:这条语句的执⾏环境是刚进命令台时的环境。
创建、删除表空间

创建、删除表空间创建⽤户和表空间:1、登录linux,以oracle⽤户登录(如果是root⽤户登录的,登录后⽤ su - oracle命令切换成oracle⽤户)2、以sysdba⽅式来打开sqlplus,命令如下: sqlplus / as sysdba3、创建临时表空间:--查询临时表空间⽂件的绝对路径。
如果需要的话,可以通过查询来写定绝对路径。
⼀般⽤${ORACLE_HOME}就可以了select name from v$tempfile;create temporary tablespace NOTIFYDB_TEMP tempfile '${ORACLE_HOME}\oradata\NOTIFYDB_TEMP.bdf' size 100m reuse autoextend on next 20m maxsize unlimited;4、创建表空间:--查询⽤户表空间⽂件的绝对路径:select name from v$datafile;create tablespace NOTIFYDB datafile '${ORACLE_HOME}\oradata\notifydb.dbf' size 100M reuse autoextend on next 40M maxsize unlimited default storage(initial 128k next 128k minextents 2 maxextents unlimited);#create tablespace TMS5_TABLES datafile '/home/oracle/app/oracle/oradata/CMADB/o1_mf_tms5_tab_tw.dbf' size 100M reuse autoextend on next 40M maxsize unlimited;5、创建⽤户和密码,指定上边创建的临时表空间和表空间create user hc_notify identified by hc_password default tablespace NOTIFYDB temporary tablespace NOTIFYDB_TEMP;6、赋予权限grant dba to hc_notify;grant connect,resource to hc_notify;grant select any table to hc_notify;grant delete any table to hc_notify;grant update any table to hc_notify;grant insert any table to hc_notify;经过以上操作,就可以使⽤hc_notify/hc_password登录指定的实例,创建我们⾃⼰的表了。
oracle增加表空间的四种方法

oracle增加表空间的四种方法Meathod1:给表空间增加数据文件ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF' SIZE 50M;Meathod2:新增数据文件,并且允许数据文件自动增长ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP04.DBF' SIZE 50MAUTOEXTEND ON NEXT 5M MAXSIZE 100M;Meathod3:允许已存在的数据文件自动增长ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF' AUTOEXTEND ON NEXT 5M MAXSIZE 100M;Meathod4:手工改变已存在数据文件的大小ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP02.DBF' RESIZE 100M;实例1:在数据库管理中,磁盘空间不足是DBA都会遇到的问题,问题比较常见。
--1查看表空间已经使用的百分比select a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024 "used MB",b.bytes/1024/1024 "free MB",round(((a.bytes-b.bytes)/a.bytes)*100,2) "percent_used"from(select tablespace_name,sum(bytes) bytes from dba_data_files group by tablespace_name) a, (select tablespace_name,sum(bytes) bytes,max(bytes) largest from dba_free_space group by tablespace_name) bwhere a.tablespace_name=b.tablespace_nameorder by ((a.bytes-b.bytes)/a.bytes) desc“Sum MB”表示表空间所有的数据文件总共在操作系统占用磁盘空间的大小比如:test表空间有2个数据文件,datafile1为300MB,datafile2为400MB,那么test表空间的“Sum MB”就是700MB“userd MB”表示表空间已经使用了多少“free MB”表示表空间剩余多少“percent_user”表示已经使用的百分比--2比如从1中查看到MLOG_NORM_SPACE表空间已使用百分比达到90%以上,可以查看该表空间总共有几个数据文件,每个数据文件是否自动扩展,可以自动扩展的最大值。
Oracle新建用户、角色,授权,建表空间的sql语句

Oracle新建⽤户、⾓⾊,授权,建表空间的sql语句oracle数据库的权限系统分为系统权限与对象权限。
系统权限( database system privilege )可以让⽤户执⾏特定的命令集。
例如,create table权限允许⽤户创建表,grant any privilege 权限允许⽤户授予任何系统权限。
对象权限( database object privilege )可以让⽤户能够对各个对象进⾏某些操作。
例如delete权限允许⽤户删除表或视图的⾏,select权限允许⽤户通过select从表、视图、序列(sequences)或快照(snapshots)中查询信息。
每个oracle⽤户都有⼀个名字和⼝令,并拥有⼀些由其创建的表、视图和其他资源。
oracle⾓⾊(role)就是⼀组权限(privilege)(或者是每个⽤户根据其状态和条件所需的访问类型)。
⽤户可以给⾓⾊授予或赋予指定的权限,然后将⾓⾊赋给相应的⽤户。
⼀个⽤户也可以直接给其他⽤户授权。
Oracle创建⽤户的语法:Oracle创建⽤户(密码验证⽤户),可以采⽤CREATE USER命令。
CREATE USER username IDENTIFIED BY passwordOR IDENTIFIED EXETERNALLYOR IDENTIFIED GLOBALLY AS ‘CN=user'[DEFAULT TABLESPACE tablespace][TEMPORARY TABLESPACE temptablespace][QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[,QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[PROFILES profile_name][PASSWORD EXPIRE][ACCOUNT LOCK or ACCOUNT UNLOCK]其中,CREATE USER username:⽤户名,⼀般为字母数字型和“#”及“_”符号。
oracle创建表空间用户及授权查看权限

Oracle 创建表空间、创建用户以与授权、查看权限一、创建临时表空间# sqlplus / as sysdba;sql> CREATE TEMPORARY TABLESPACE test_tempTEMPFILE '/opt/oradata/test_temp.dbf'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;二、创建用户表空间sql> CREATE TABLESPACE test_dataLOGGINGDATAFILE '/opt/oradata/test_data.dbf'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;sql> select tablespace_name,block_size,extent_management,segment_space_managementfrom dba_tablespaceswhere tablespce_name like 'USER%';三、复原表空间sql> create undo tablespace user01_undodatafile '/u01/oracle/app/oracle/user01_undo.dbf'size 20M;sql> select tablespace_name,block_size,extent_management,segment_space_management from dba_tablespacesfrom tablespace_name like 'user01_%';sql> select tablespace_name,status,contentsfrom dba_tablespacesfrom tablespace_name like 'user01_%';四、创建用户并制定表空间sql> CREATE USER username IDENTIFIED BY passwordDEFAULT TABLESPACE TEST_DATATEMPORARY TABLESPACE TEST_TEMP;sql> GRANT role TO username;五、查看所有用户sql> SELECT * FROM DBA_USERS;sql> SELECT * FROM ALL_USERS;sql> SELECT * FROM USER_USERS;六、查看用户对象或角色权限sql> SELECT * FROM DBA_TAB_PRIVS;sql> SELECT * FROM ALL_TAB_PRIVS;sql> SELECT * FROM USER_TAB_PRIVS;七、查看所有角色sql> SELECT * FROM DBA_ROLES;八、查看用户或角色所拥有的角色sql> SELECT * FROM DBA_ROLE_PRIVS;sql> SELECT * FROM USER_ROLE_PRIVS;九、表空间脱机sql> select tablespace_name,status,contentsfrom dba_tablespaceswhere tablespce_name like 'user_%';sql> col name for a55sql> select file#,name,statusfrom v$datafilewhere file# >=8;设置脱机状态sql> alter tablespace user01 offline;sql> select tablespace_name,status,contents from dba_tablespaceswhere tablespce_name like 'user01_%'; sql> select file#,name,statusfrom v$datafilewhere file# >= 8;设置联机状态sql> alter tablespace user01 online;十一、只读表空间设置只读表空间sql> alter tablespace user01 read only;sql> select tablespce_name,status,contents from dba_tablespaceswhere tablespace_name like 'user_%';可读可写sql> alter tablespace user01 read write;sql> select tablespace_name,status,contentsfrom dba_tablespacewhere tablespace_name like 'user%';十二、改变表空间的存储设置sql> alter tablespace user01 minimum extent 100K;sql> alter tablespace user01default storage ( initial 100 k next 100 k maxextents 200);sql> set line 120sql> col tablespace_name for a15sql> select tablespace_name,initial_extent,next_extent,max_extents,pct_increase,min_extentsfrom dba_tablespaceswhere tablespace_name like 'user01%';十三、重置表空间大小sql> col file_name for a40sql> set line 100sql> col tablespace_name for a15sql> select file_id,tablespace_name,file_name,autoextensible from dba_data_fileswhere file_id >= 8order by file_id;sql> alter database datafile' ' autoextend onnext 1M;sql> select file_id,tablespace_name,file_name,autoextensiblefrom dba_data_fileswhere file_id >= 8order by file_id;十四、手工重置数据文件的大小sql> select file_id,file_name,tablespace_name,bytes/(1024*1024) MBfrom dba_data_fileswhere tablespace_name LIKE 'USERS01%'order by tablespace_name;sql> alter database datafile '/u01/oracle/app/oracle/oradata/db243/use01.dbf' resize 50M;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MBfrom dba_data_fileswhere tablespace_name like '%USE%'order by tablespace_name;sql> alter tablespace use01add datafile '/u01/oracle/app/oracle/oradata/db243/use01_a.dbf'size 30M;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MBfrom dba_data_fileswhere tablespace_name like '%USE%'order by tablespace_name;十五、移动数据文件的方法〔一〕、移动可以脱机的表空间# sqlplus / as sysdbasql> col file_name for a45sql> set line 120#查看数据库中数据文件的分布情况sql> select file_id,file_name,tablespace_name from dba_data_fileswhere file_name like '%ORADATA%'order by file_name;# 查看数据库表空间的状态sql> select tablespace_name,status,contents from dba_tablespaceswhere tablespace_name not like '%USE%';# 使表空间脱机sql> alter tablespace use01 offline;# 查看更改有没有成功sql> select tablespace_name,status,contentsfrom dba_tablespaceswhere tablespace_name not like '%USE%';# CP 数据文件# cp /u01/oracle/app/oracle/oradata/db243/use01.dbf /u01/oracle/app/oradata#使用命令来重新命名表空间所对应的数据文件名sql> alter tablespace use01 renamedatafile '/u01/oracle/app/oracle/oradata/db243/use01.dbf'to '/u01/oracle/app/oradata/use01.dbf';#表空间联机sql> alter tablespace use01 online;〔二〕、移动系统表空间Sql> shutdown immediatesql> startup mountsql> host cp /u01/oracle/app/oracle/oradata/db243/system01.dbf /u01/oracle/app/oradatasql> alter database renamefile '/u01/oracle/app/oracle/oradata/sb243/system01.dbf'to '/u01/oracle/app/oradata/system01.dbf';sql> alter database open;sql> select tablespace_name,status,contentsfrom dba_tablespaces;sql> select file_id,file_name,tablespace_namefrom dba_data_files;十六、迁移数据字典和本地管理的表空间Sql> connect sys/wuzihao as sysdba;sql> show user;#查看哪些表空间是数据字典管理的sql> select tablespace_name,block_size,extent_management,segment_space_management,min_extentsfrom dba_tablespaceswhere tablespace_name like '%USE%';#将数据字典管理的表空间迁移到本地管理的表空间sql> execute dbms_space_admin.tablespace_migrate_to_local('use01');#将本地管理的表空间迁移到数据字典管理的表空间sql> execute dbms_space_admin.tablespace_migrate_from_local('use01');十七、删除表空间#查询所有创建的表空间sql> select file_id,file_name,tablespace_namefrom dba_data_fileswhere file_id > 5order by file_id;#控制文件指向的数据文件指针删除sql> drop tablespace use01;#操作系统文件也删除sql> drop tablespace use01 including contents and datafiles;#临时表空间sql> col file for a50sql> col tablespace for a15sql> set line 120#查询临时表空间sql> select f.file#,t.ts#, “File〞,t.n ame “Tablespace〞from v$tempfile f,v$tablspace twhere f.ts# = t.ts#;#删除临时表空间sql>drop tablespace use01_temp including contents and datafiles;十八、利用OMF来管理表空间# sqlplus / as sysdba#设定数据文件存放的目录sql> alter system setdb_create_file_dest = '/u01/oracle/app/oradata';sql> create tablespace test01;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MB from dba_data_files;sql> alter tablespace test01 add datafile 50M;十九、应用实例#查询所有的表空间信息sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MB from dba_data_files;#查看数据库表空间是数据字典管理,还是本地管理sql> select tablespace_name,block_size,extent_management,segment_space_management,min_extentsfrom dba_tablespaces;#查询所有的临时表空间sql> select f.file#,t.ts#, “File〞, “Tablespace〞from v$tempfile f,v$tablespace twhere f.ts# = t.ts#;#创建数据表空间sql> create tablespace pioneer_datadatafile '/u01/oracle/app/oradata/pioneer_data.dbf'size 100 Mextent management localuniform size 1M;#创建索引表空间sql> create tablespace pioneer_indexdatafile '/u01/oracle/app/oradata/pionner_index.dbf'size 100Mextent management localuniform size 1M;#创建复原表空间sql> create tablespce pioneer_undodatafile '/u01/oracle/app/oradata/pioneer_undo.dbf'size 100Mextent management local;#创建临时表空间sql> create temporary tablespace pioneer_tempdatafile '/u01/oracle/app/oradata/pioneer_temp.dbf'size 50Mextent management localuniform size 2M;#验证表空间是否创建成功sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MB from dba_tablespaceswhere tablespace_name like 'PION%';#验证临时表空间创建是否成功sql> select f.file#,t.ts#, “File〞, “Tablespace〞from v$tempfile f,v$tablespace twhere f.ts# = t.ts#and like 'PION%';#验证四个表空间是否本地管理,sql> select tablespace_name,block_size,extent_management, segment_space_management,min_extents,contents from dba_tablespaceswhere tablespace_name like 'PION%';。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
linux下创建oracle用户表空间
就是在已有的数据库实例上创建一个新的帐号,访问一些新的表
操作步骤如下:
1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)
2、以sysdba方式来打开sqlplus,命令如下:sqlplus "/as sysdba"
3、查看我们常规将用户表空间放置位置:执行如下sql:
select name from v$datafile;
上边的sql一般就将你的用户表空间文件位置查出来了。
4、创建用户表空间:
CREATE TABLESPACE NOTIFYDB DATAFILE '/oracle/oradata/test/notifydb.dbf' SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
5、创建用户,指定密码和上边创建的用户表空间
CREATE USER hc_notify IDENTIFIED BY hc_password DEFAULT TABLESPACE NOTIFYDB;
6、赋予权限
grant connect,resource to hc_notify;
grant unlimited tablespace to hc_notify;
grant create database link to hc_notify;
grant select any sequence,create materialized view to hc_notify;
经过以上操作,我们就可以使用hc_notify/hc_password登录指定的实例,创建我们自己的表了
续:
创建临时表空间:
create temporary tablespace test_temp
tempfile 'F:\app\think\oradata\orcl\test_temp01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
创建表空间:
create tablespace test_data
logging
datafile 'F:\app\think\oradata\orcl\test_data01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
创建用户:
create user jack identified by jack
default tablespace test_data
temporary tablespace test_temp;
为用户赋予权限:
GRANT create any table TO jack;
GRANT resource,dba TO jack;
GRANT select any table TO jack;
第一个是授予所有table有create权限,第三是授予所有table有select权限. 第二个就是赋予DBA的权限,这才是最重要的,其实只要第二就可以了.
四:删除用户表空间的步骤:
Alter tablespace 表空间名称 offline;
Drop tablespace 表空间名称;(表空间无有数据时用)
或者
drop tablespace 表空间名称 including contents;(表空间下有数据时候用)
temporary tablespace是oracle里临时表空间,临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。
当oracle里需要用到sort的时候,而pga又没有足够大的时候,将会把数据放入临时表空间里进行排序,同时如果有异常情况的话,也会被放入临时表空间,但是我们需要重建temporary tablespace,直接是不能drop默认的临时表空间的,不过我们可以通过以下方法来做。
查看目前的temporary tablespace
SQL> select name from v$tempfile;。