Oracel 运维常用命令集
一、数据库常用查询
1.查询数据库用户名
SELECT * FROM ALL_USERS;
--或
select username, default_tablespace FROM sys.dba_users;
2、查询数据库名
select name from v$database;
--- 如果是管理员等同权限,也可通过SQL*Plus或SQLcl中使用以下语句
show parameter db;
3、查询数据库的实例名
select instance_name from v$instance;
--- 如果是管理员等同权限,也可通过SQL*Plus或SQLcl中使用以下语句
SHOW PARAMETER instance_name
4.常用sql查询
--查询数据库 版本信息
select * from product_component_version
--查看连接控制文件路径
select name from v$controlfile;
--查看日志文件路径
select member from v$logfile;
--查看数据文件路径
select name from v$datafile;
--查看在线日志文件
select * from v$log;
--查看未归档日志文件
select * from v$archived_log;
alter system switch logfile;
alter system archive log all;
select * from v$log_history;
--查询"当前连接的全部表"删除
SELECT 'drop table '|| table_name || ';' FROM USER_TABLES ORDER BY TABLE_NAME;
--查询"删除当前用户及用户下全部对象"
select 'drop user ' || username || ' cascade' || ';'from dba_users
二、数据库备份与恢复
1.使用EXP和IMP工具:
整库导出:exp 管理员账号/密码 full=y,生成EXPDAT.DMP文件。
整库导入:imp 管理员账号/密码 full=y file=C:\person.dmp。
按用户导出:exp 管理员账号/密码 owner=用户名 file=C:\person.dmp。
按用户导入:imp 管理员账号/密码 file=C:\person.dmp fromuser=用户名。
按表导出:exp 管理员账号/密码 file=person.dmp tables=t_person,t_student。
按表导入:imp 管理员账号/密码 file =person.dmp tables=t_person,t_student。
--导出
exp jxkhgl/jxkhgl@192.169.3.208/QMJK109_ODS file=d:\tyrz.dmp ;
exp userid='pmis/pmis@192.167.100.89:1521/odsdb' file=/app/pmis.dmp log=/app/pmis.log owner=pmis
--导入数据库
imp system/manager@TEST file=d:\daochu.dmp ignore=y full=y log=d:\daoru.txt
imp hrp/Hrp#bhgx2024#@172.23.26.85:1521/ygtdb file=/home/gxrjadmin/hrp.dmp full=y ignore=y log=/home/gxrjadmin/hrp.log
--备份单表
SQL> create table A_bak as select * from A
三、数据库管理---创建
1.查看数据库字符集
SQL> select userenv('language') from dual;
2.查看表空间的位置
SQL> select t1.name,t2.name from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;
3.删除表空间的指定用户下所有表
select 'drop table '||table_name||';' as sqlscript from all_tables where owner='JCJXKH';
4.删除表空间
drop tablespace YGT_DATA including contents and datafiles;
5.创建表空间
SQL>create tablespace YGT_YCHZ datafile 'E:\GXRJYGT\ORACLEDB\ORADATA\ORCL\ygt_ychz.DBF' size 512m autoextend on next 100m;
6.创建用户
SQL>create user ygt_hz identified by "Ahqxychz" default tablespace YGT_YCHZ;
7.赋权
--SELECT:允许用户查询表中的数据。
--INSERT:允许用户向表中插入新的数据。
--UPDATE:允许用户修改表中已存在的数据。
--DELETE:允许用户删除表中的数据。
--ALTER:允许用户对表进行修改和结构变更的操作。
--REFERENCES:允许用户在其他表中创建外键引用到该表。
--CONNECT 连接权限。
--RESOURCE 资源权限。
--DBA 管理员最高级权限。
SQL>grant dba to dhkj;
8.修改用户密码
alter user 用户 identified by 密码;
9.收回用户权限
revoke select on emp from jcyth;
10.删除用户
drop user 用户名;
11.解除用户锁定
alter user scott account unlock;
四、数据库服务与监听
1.监听管理
cmd>lsnrctl status 查看监听
cmd>lsnrctl star 启动
cmd>lsnrctl stop 关闭
状态 BLOCKED
2.数据库连接
-- 切换sid
cmd>set ORACLE_SID=orcl
--连接数据库
cmd>sqlplus /nologw
SQL>conn / as sysdba 连接空闲例程
- 数据库服务管理
--关闭
SQL> shutdown normal 正常方式关闭数据库
SQL> shutdown immediate 立即方式关闭数据库
SQL> shutdown abort 直接关闭数据库实例
--启动
SQL>startup nomount 只启动实例
SQL>startup mount 实例启动、数据库加载
SQL>startup 实例启动、数据库加载、数据库打开