Oracle运维基本操作,倒库、备份、恢复与优化。

Oracle基本操作
创建表空间
CREATE TABLESPACE test //这里我们创建的表空间名称叫做test,名字可以自定义

LOGGING

DATAFILE '/data/ora01/app/oracle/oradata/cms/test.dbf' //这个是表空间数据文件存放地方,建议放在Oracle安装目录的oradata下面

SIZE 128M //表空间初始大小

AUTOEXTEND ON //表空间自动增长 ON开

NEXT 128M MAXSIZE 30G //表空间每次增长128M,最多增长到30G,Oracle单个表空间最大支持到32G

EXTENT MANAGEMENT LOCAL

SEGMENT SPACEMANAGEMENT AUTO;

创建用户并指向表空间、授权
create user test identified by 123456 default tablespace test; //创建一个用户test,密码为123456,表空间为test

grant dba to test; //赋予test用户dba的权限

查看数据备份目录

select * from dba_directories;

导出数据
expdp test/123456 directory=DATA_PUMP_DIR SCHEMAS=test dumpfile=test20180606.DMPDP

//按用户导出数据,导出test用户的所有数据,这里用户是test,test的存数据的表空间是test,导入数据的时候要用的到
导入数据
//下面语句表示把从test用户导出的数据倒入到用户best,

Impdp best/123456 directory=DATA_PUMP_DIR dumpfile=G6A0220180308.DMPDP REMAP_SCHEMA=test:best REMAP_TABLESPACE=test:best transform=OID:N

导入参数解释:
directory:后面跟一个数据库路径,一般以变量的形式表现 用sql可以查看:select * from dba_directories;

DATA_PUMP_DIR:是oracle数据库的默认变量,代表一个路径,在oracle安装目录下ORACLE_HOME/admin/orcl/dpdump/下,数据泵导出的数据文件和要导入的数据文件一般都放在这个目录下

dumpfile:要导入的数据文件名称

REMAP_SCHEMA:定义源用户和要导入到的目标用户,数据文件是test用户导出,源用户是test用户,导入到目标用户best

REMAP_TABLESPACE:定义源用户表空间和要导入到目标用户的表空间,数据文件是test用户导出,test的表空间是test,导入到目标用户best的表空间best,在别的环境只要对应上就可以,不然导入时会报错。

transform=OID:N :这个参数是忽略type报错。

exp导入导出
exp导入导出就不详细解释和数据泵差不多,好处是可以远程导入导出,坏处是导入导出都特别慢

exp G6A02/[email protected]:1521/nsdev file=/G6A0220180120.dmpowner=G6A02

imp G6A02/Ninestar123@orcl file='/u01/software/expdat.dmp' log='/software/NSTCSA27335dmp.log' commit=y fromuser=G6A02 touser=G6A02

解决type报错:transform=OID:N 导入时用

解决版本问题:version=10.2.0.1.0 导出时用,比如说从oracle12c导出的数据导入到oracle11g就得加上version参数,不然会提示版本不兼容,但是从11g导出的数据导入到12c就不用加这个参数 oracle数据库高版本兼容低版本

解锁用户:ALTER USER cib_bank_sc ACCOUNT UNLOCK;

查询缺省表空间:select username,default_tablespace from dba_users;

修改oracle用户密码:alter user sys identified by Ninestar123;

oracle故障,错误文件删除:alter database datafile '/u01/app/oracle/oradata/G6.ora' offlinedrop; alter database datafile '/u01/app/oracle/oradata/G6A02.ora' offline drop;

查询数据库是否有锁表:select * from fw_lockresource r where r.isfree = 0;

删除oracle用户:drop user ees2 cascade;

删除表空间:drop tablespace ees2 including contents and datafiles cascade constraint;

修改用户缺省表空间:alter user ees2 default tablespace ees2;

数据库优化:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

       ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;

       ALTER SYSTEM SET PROCESSES=1000 SCOPE=SPFILE;修改最大连接数

       ALTER SYSTEM SETOPEN_CURSORS=1000 SCOPE=BOTH;

       ALTER SYSTEM SETDB_FILES=300 SCOPE=SPFILE;

查询数据库当前的连接数:select count(*) from v$session;

查询数据库并发连接数:Select count(*) from v$session where status='ACTIVE';

数据库允许的最大连接数:select value from v$parameter where name = 'processes';

查询最大连接:show parameter processes;

查看不同用户的连接数:select username,count(username) from v$session where username is not null group by username;

如果对此有兴趣,请扫下面二维码免费获取更多详情
Oracle运维基本操作,倒库、备份、恢复与优化。

猜你喜欢

转载自blog.51cto.com/11233498/2128845