Oracle DataBase 用户管理与权限管理
2023-09-27 14:23:43 时间
数据库
-- 查看数据库 SELECT * FROM v$database;
实例
-- 查看数据库实例 SELECT * FROM v$instance;
表空间
https://docs.oracle.com/en/database/oracle/oracle-database/19/admin/managing-tablespaces.html
-- 创建表空间 CREATE TABLESPACE DB LOGGING DataFile '/opt/oracle/oradata/ORCLCDB/db.dbf' SIZE 1024m Autoextend ON next 200m maxsize unlimited extent management local; CREATE TEMPORARY TABLESPACE DB_TEMP TempFile '/opt/oracle/oradata/ORCLCDB/db_temp.dbf' SIZE 500m Autoextend ON next 200m maxsize 2048m extent management local; -- 强制删除表空间 DROP tablespace DB including contents AND datafiles CASCADE CONSTRAINTS; DROP tablespace DB_TEMP including contents AND datafiles CASCADE CONSTRAINTS; -- 查看表空间 SELECT * FROM dba_tablespaces; -- 查询表空间路径 SELECT * FROM dba_data_files; -- 查看表空间的使用情况 SELECT * FROM dba_free_space; -- 查看当前用户的表空间及账户状态 SELECT * FROM user_users;
用户
-- 在 CDB 容器数据库上创建用户 SELECT name,cdb FROM v$database; CREATE USER C##zhangsan IDENTIFIED BY mima DEFAULT TABLESPACE DB TEMPORARY TABLESPACE DB_TEMP QUOTA 500m ON DB; -- 在 PDB 可插拔数据库上创建用户,用户名不用加 C## -- 需要 TNS(tnsnames.ora) 方式登录,如果不配置会报用户名密码错误 -- https://www.oracle.com/database/technologies/instant-client/downloads.html SELECT pdb_id,pdb_name,dbid,status,creation_scn FROM dba_pdbs; select con_id,dbid,NAME,OPEN_MODE from v$pdbs; select sys_context ('USERENV', 'CON_NAME') from dual; alter pluggable database pdborcl open; SELECT name,pdb FROM v$services; alter session set container=ORCLPDB1; -- 删除用户,cascade:同时把该用户创建的数据对象一并删除 DROP USER C##zhangsan cascade;
密码
-- 给当前用户修改密码 password 用户名; -- 给其它用户修改密(需要 dba 的权限,或是拥有 alter user 的系统权限,也可以使用 password 用户名) ALTER USER 用户名 IDENTIFIED BY 新密码;
授权
-- 授权 GRANT CONNECT,RESOURCE TO C##zhangsan; -- 删除授权 REVOKE CONNECT,RESOURCE FROM C##zhangsan;
配额
-- 查看配额,配额可以禁止用户对象使用过多的表空间 SELECT * FROM DBA_TS_QUOTAS;
方案
-- schema 方案,一般称用户所拥有的所有数据库对象的集合叫“方案”,Oracle 中创建方案的方法就是创建用户 -- 希望看到某个用户的方案究竟有什么数据对象,要求:让 xiaohong 可以查看 scott 的 emp 表 -- 先用 scott 登录,再赋权限 conn scott / tiger; GRANT SELECT [ UPDATE DELETE INSERT ALL ] ON emp TO xiaohong;
查看
-- 查看所有用户 SELECT * FROM DBA_USERS; SELECT * FROM ALL_USERS; SELECT * FROM USER_USERS; -- 查看用户系统权限 SELECT * FROM DBA_SYS_PRIVS; SELECT * FROM USER_SYS_PRIVS; -- 查看用户对象或角色权限 SELECT * FROM DBA_TAB_PRIVS; SELECT * FROM ALL_TAB_PRIVS; SELECT * FROM USER_TAB_PRIVS; -- 查看所有角色 SELECT * FROM DBA_ROLES; -- 查看用户或角色所拥有的角色 SELECT * FROM DBA_ROLE_PRIVS; SELECT * FROM USER_ROLE_PRIVS;
导出导入
exp zhangsan/mima@127.0.0.1:1521/orcl file=/opt/xxx.dmp owner=zhangsan imp lisi/mima@10.77.88.99:1522/orcl file=/opt/xxx.dmp fromuser=zhangsan touser=lisi
- full=y,导入或导出全部内容
- ignore=y,没有的表,创建并倒入数据,已经有的表,忽略创建,不忽略导入
- buffer,缓冲大小
数据量查看
--查询所有表及表中的数据量 select u.TABLE_NAME,u.NUM_ROWS from user_tables u order by u.NUM_ROWS desc
慢 SQL:https://juejin.cn/post/7002490281228517413
限制
-- 解锁用户,将 USER_NAME 替换为登录用户名 ALTER USER USER_NAME ACCOUNT UNLOCK; -- 不限制登录失败次数,默认超过次数会锁定账号,禁止登陆 ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED; -- 用户密码不过期,默认超过时间会过期,需要修改密码才能登陆 ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
https://docs.oracle.com/en/database/oracle/oracle-database/19/administration.html
相关文章
- 倍福---database访问mysql数据库
- MongoDB的Invalid credentials for database
- 从Oracle Database 角度来看浪潮天梭K1主机的操作系统选择
- Ubuntu-12.04.5 安装 oracle 12.2.0.1 数据库database软件
- Ubuntu-4.10 安装 oracle 11.2.0.4 数据库database软件(最古老的ubuntu)
- Debain-4 安装 oracle 12.2.0.1 数据库database软件(过程辛苦,所以重复发布,留念)
- Debain-4 安装 oracle 12.2.0.1 数据库database软件
- Debain-9.13 安装 oracle 12.2.0.1 数据库database软件:更精简的配置
- HTML5客户端数据存储机制Web Storage和Web SQL Database
- Linux(Fedora) 安装 Oracle XE Database
- postgres pg_stat_database视图
- 2023-02-10 Readings in Database Systems
- Software Development Engineer, RDS Database Engines, Seattle
- Oracle Database 18c 的10大新特性一览
- 药物数据库 | DrugBank | Therapeutic target database
- Database Recovery in GitLab – Implementing Database Disaster Tolerance & High Availability
- 7.3 Designing the Python GUI database
- mysql主从复制错误:Last_SQL_Error: Error 'Duplicate entry '327' for key 'PRIMARY'' on query. Default database: 'xxx'. Query:
- Exception: The transaction log for database is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc.错误解决
- Oracle Database的安装与卸载
- Oracle Recommended Patches -- Oracle Database (Doc ID 756671.1)
- How To Manually Remove ORACLE_OCM From Database (Doc ID 859113.1)