- 因为使用Oracle时比较耗费内存,所以我们可以在使用它的时候才开启一些服务:
win+R
--->services.msc
--->找到并启动2个服务:OracleServiceORCL
和OracleOraDb11g_home1TNSListener
,不用了就暂时关闭它们=_='
Oracle后台服务状态设置
- 系统用户:
sys
,system
,sysman
,scott(默认密码是tiger)
- 使用系统用户登录:
[username/password] [@server] [as sysdba | sysoper]
// 例如:打开sqlplus.exe程序,键入命令:system/123456 @orcl as sysdba
// orcl就是自己设置的服务名
// 打开cmd,键入以下一条命令
sqlplus system/123456
//用sys登录oracle
connect sys/123456 as sysdba;
SHOW user;
DESC dba_users;
select username from dba_users;
- 启用并连接
scott
用户,其默认密码是tiger
!
ALTER user scott account unlock;
connect scott/123456; -- 登录scott用户
show user; -- 查看当前登录的用户
- 表空间的分类:①永久表空间;②临时表空间;③UNDO撤销表空间。
- 查看用户的表空间:①
dba_tablespaces
和dba_users
(管理员级别)、②user_tablespaces
和user_users
(用户级别)
-- 管理员级别
DESC dba_tablespaces;
-- 查看管理员表空间的名字
SELECT TABLESPACE_NAME FROM dba_tablespaces;
-- 查看管理员信息
DESC dba_users;
-- 查看管理员默认表空间
SELECT DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE FROM dba_users WHERE USERNAME='SYSTEM';
-- 用户级别
DESC user_tablespaces;
-- 查看用户表空间的名字
SELECT TABLESPACE_NAME FROM user_tablespaces;
-- 查看用户信息
DESC user_users;
ALTER USER username DEFAULT | TEMPORARY TABLESPACE tablespace_name;
-- 例如:更改system用户默认表空间
alter user system default tablespace tablespace_name;
- 在Oracle数据库安装完成后,system用户的默认表空间和临时表空间分别是
system
和temp
。
- 创建(永久或者临时的)表空间
CREATE [TEMPORARY] TABLESPACE tablespace_name TEMPFILE | DATAFILE 'xx.dbf' SIZE yy
-- 创建一个永久表空间
CREATE TABLESPACE test1_tablespace datafile 'testfile.dbf' size 10m;
-- 查看永久表空间文件的具体路径,注意:表空间名要大写!
DESC dba_data_files; -- 查看表结构信息
SELECT FILE_NAME FROM dba_data_files WHERE TABLESPACE_NAME='TEST1_TABLESPACE'; -- 查看永久文件的绝对路径
-- 创建一个临时表空间
CREATE temporary tablespace temptest1_tablespace tempfile 'tempfile1.dbf' size 10m;
- 查看临时表空间文件的具体路径,注意:表空间名要大写!
DESC dba_temp_files; -- 查看表结构信息
SELECT FILE_NAME FROM dba_temp_files WHERE TABLESPACE_NAME='TEMPTEST1_TABLESPACE'; -- 查看临时文件的绝对路径
-- 设置表空间联机或脱机状态,若设置为脱机状态,则不能使用它了
ALTER TABLESPACE tablespace_name ONLINE | OFFLINE;
-- 例如:修改表空间test1_tablespace为脱机状态
ALTER TABLESPACE test1_tablespace offline;
-- 查看表结构信息,其里面有一个STATUS(状态)字段
DESC dba_tablespaces;
-- 查看表空间TEST1_TABLESPACE(注意要大写)的状态
SELECT STATUS FROM dba_tablespaces WHERE TABLESPACE_NAME = 'TEST1_TABLESPACE';
-- 设置表空间只读或者读写状态(注意:该表空间必须是在线online状态)
ALTER TABLESPACE tablespace_name READ ONLY | READ WRITE;
-- 例如:修改表空间test1_tablespace为只读状态,默认是读写(write only)状态(即online)
ALTER TABLESPACE test1_tablespace read only;
-- 查看当前表空间的状态
SELECT STATUS FROM dba_tablespaces WHERE TABLESPACE_NAME = 'TEST1_TABLESPACE';
-- 增加永久表空间一个数据文件
ALTER TABLESPACE tablespace_name ADD DATAFILE 'xx.dbf' SIZE yy;
-- 在表空间test1_tablespace中增加数据文件
ALTER TABLESPACE test1_tablespace ADD DATAFILE 'test2.dbf' SIZE 10m;
- 查看永久表空间test1_tablespace 的所有数据文件
SELECT FILE_NAME FROM dba_data_files WHERE TABLESPACE_NAME='TEST1_TABLESPACE';
- 删除永久表空间一个数据文件,注意:不能删除第一个数据文件,若要删除,则需把整个表空间删除。
ALTER TABLESPACE tablespace_name DROP DATAFILE 'filename.dbf'
-- 删除表空间test1_tablespace中的test2.dbf数据文件
ALTER TABLESPACE test1_tablespace DROP DATAFILE 'test2.dbf';
- 查看永久表空间test1_tablespace 的所有数据文件,注意:表空间名要大写
SELECT FILE_NAME FROM dba_data_files WHERE TABLESPACE_NAME='TEST1_TABLESPACE';
DROP TABLESPACE tablespace_name [INCLUDING CONTENTS];
-- 例如删除表空间及其包含的数据文件
DROP TABLESPACE test1_tablespace INCLUDING CONTENTS;
-- 查看当前system管理员的表空间名字
SELECT TABLESPACE_NAME FROM dba_tablespaces;
网友评论