网络详细:https://blog.csdn.net/guofanggang/article/details/106052440
1.切换到oracle用户下
su - oracle
2.登录sqlplus
sqlplus /nolog
3.使用sys登录
sqlplus / as sysdba
4.查询表空间存储位置
select name from v$tempfile;
5、创建临时表空间
:/data/database/orcl/temp01.dbf 好像可以自己写不需要看上图
create temporary tablespace TMP_CAL tempfile '/data/database/orcl/temp01.dbf
' size 2G reuse autoextend on next 20m maxsize unlimited;
6、创建数据表空间
create tablespace DATA_AML_BUSI datafile '/data/database/orcl/DATA_AML_BUSI_01.dbf' size 100M reuse autoextend on next 40M maxsize unlimited;
7、创建索引表空间
create tablespace IDX_BUSI logging datafile '/data/database/orcl/INDEX_01.dbf' size 100m autoextend on next 32m maxsize 2048m extent management local;
8、创建用户并分配表空间
create user mjw identified by 123456 default tablespace DATA_AML_BUSI temporary tablespace TMP_CAL;
9、赋权dba给用户
grant dba to mjw;
10、创建文件目录
create directory DATA_DIR as '/data/database/temp';
11、赋予权限
grant connect,resource to 用户;
grant unlimited tablespace to 用户;
grant create database link to 用户;
grant select any sequence,create materialized view to 用户;
grant unlimited tablespace to 用户;//授予不限制的表空间
grant select any table to 用户;//授予查询任何表
grant是关键字,select any table是权限,to后面是用户账号
12、查询已创建的用户:
select username from dba_users;
13、修改用户密码:
将用户的密码设置为123456。
alter user mjw identified by 123456;
有时用户会处于锁定状态,解锁用户:
alter user crjsj account unlock;
14、删除用户语句:
--用户语句
drop user 用户名 cascade;
--删除空的表空间,但是不包含物理文件
drop tablespace tablespace_name;
--删除非空表空间,但是不包含物理文件
drop tablespace tablespace_name including contents;
--删除空表空间,包含物理文件
drop tablespace tablespace_name including datafiles;
--删除非空表空间,包含物理文件
drop tablespace tablespace_name including contents and datafiles;
--如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段,就要加上CASCADE
CONSTRAINTS
drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;
15、登录用户
在oracle用户下进行登录
sqlplus mjw/123456
如果导入sql文件报错
这是由于创建表空间时设置了有限的大小,两种方法:
方法1: 授予用户对该表空间的UNLIMITED配额
ALTER USER CRJSJ QUOTA UNLIMITED ON crjsj_date;
方法2: 重新授权resource角色给用户之后,便可以创建表
GRANT RESOURCE TO CRJSJ;
报错:
1.导入dmp数据的异常错误…
二,修改密码删除用户及其所有空间和对象
1,查看有DBA权限的用户表,语法:下面的语句本人没有测到它是做什么用的貌似数据太多,我没有仔细分析
select * from dba_tables t where t.owner='用户id';
dba_tables: 是有权限的DBA 用户id: oracle用户名
查看当前用户下的表,看看此数据库有多少用户
select table_name from user_tables
--Oracle查询用户,表相关信息...
--用户
SELECT * FROM DBA_USERS;
SELECT * FROM ALL_USERS;
SELECT * FROM USER_USERS;
--系统权限
SELECT * FROM DBA_SYS_PRIVS;
SELECT * FROM SESSION_PRIVS;
SELECT * FROM USER_SYS_PRIVS;
--角色
SELECT * FROM USER_ROLE_PRIVS;
SELECT * FROM DBA_ROLES;
--对象权限
select * from user_tab_privs where table_name like '%T_MDM_SMS_MESSAGE_TYPE%';
select * from dba_tab_privs;
select * from all_tab_privs;
--表查询
select * from user_tab_comments;
select * from user_col_comments
2,–//修改用户密码
alter user test identified by new_password;
3,–//删除表空间
drop tablespace test_temp including CONTENTS and datafiles;
4,–//删除用户
drop user 用户名 cascade; --//执行该语句请小心,会级联删除该用户下所有对象。
//cascade参数是级联删除该用户所有对象,经常遇到如用户有对象而未加此参数则用户删不了的问题,所以习惯性的加此参数
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/83909.html