docker安装oracle-12-ee
#一行命令
docker run -d --name oracle \
--privileged -v $(pwd)/oradata:/u01/app/oracle \
-p 8080:8080 -p 1521:1521 absolutapps/oracle-12c-ee
修改oracle账号密码设置
镜像创建的容器「默认有sys和system两个用户,密码都是oracle,默认的一个SID/服务名是ORCL」,Oracle的用户密码默认有效期是180天,180天后用户会自动锁住,下面进入oracle-12c容器内将密码的有效期设置为永久!
# 进入oracle-12c容器内
docker exec -it oracle /bin/bash
# 切换成oracle用户
su oracle
# 进入sqlplus
sqlplus / as sysdba
# 设置密码有效期为无限制
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
# 解锁system用户
SQL> alter user SYSTEM account unlock;
物理机连接oracle-12c
输入ip等信息测试连接
其他相关命令
//创建表空间
create tablespace lcxs datafile '/u01/app/oracle/oradmp/lcxs.dbf' size 300M;
//创建用户并绑定空间
create user lcxs identified by lcxs default tablespace lcxs;
//linux用户授权
GRANT CREATE SESSION,CREATE TABLE,CREATE VIEW,CREATE SEQUENCE,UNLIMITED TABLESPACE TO lcxs;
grant connect,resource,dba to lcxs;
//设定连接数SQL
alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS 10;
//不限制连接数
alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS UNLIMITED;
//创建数据仓库文件
create directory dpdata2023 as '/u01/app/oracle/oradmp';
//查询
select * from dba_directories;
//exit;
//导入dmp文件[将lcxs.dmp文件移动到/u01/app/oracle/oradmp]后执行下面
#如果导入失败大概率是文件损坏
impdp lcxs/lcxs dumpfile=lcxs.dmp directory=dpdata2023 remap_schema=lcxs:lcxs remap_tablespace=lcxs:lcxs
SQL>
//删除用户
drop user lcxs CASCADE;