今日一个部署任务,需在测试环境导入一个Oracle数据库。
开发项目在公司机房服务器上有一个Oracle库,但是测试环境是阿里云,访问不到机房的服务器,所以我在测试环境的数据库中增加用户和用户的所属表空间,将开发环境的库导到测试环境。本次项目部署到测试环境,是为了让用户查看我们已实现功能的效果,已便于我们再进行修正。
1.切换到oracle用户
su - oracle
2.以sysdba方式打开sqlplus
sqlplus / as sysdba
3.创建临时表空间
select name from v$tempfile;
create temporary tablespace RECORDDB_TEMP tempfile '${ORACLE_HOME}\oradata\RECORDDB_TEMP.bdf' size 100m reuse autoextend on next 20m maxsize unlimited;
4.创建表空间
select name from v$datafile;
select name from v$datafile;
create tablespace record_data datafile '${ORACLE_HOME}\oradata\record_data.dbf' size 100M reuse autoextend on next 40M maxsize unlimited default storage(initial 128k next 128k minextents 2 maxextents unlimited);
5.创建用户和密码,并指定创建的临时表空间和表空间
create user record identified by record default tablespace record_data temporary tablespace RECORDDB_TEMP;
6.赋予权限
grant dba to record;
grant connect,resource to record;
grant select any table to record;
grant delete any table to record;
grant update any table to record;
grant insert any table to record;
通过上面的操作,就可以使用record用户登录指定的实例,创建自己的表了
7.通过PL/SQL Developer导出数据库sql文件:
弹出下面窗口,选择要导出的表(如果不选,默认导出全部),下方导出方式选择SQL插入(本想导出dmp,无奈Oracle客户端没有exp.exe,无法导出),并设置导出路径
8.将sql文件通过WinSCP上传至Linux测试服务器
9.Oracle数据库执行sql文件:
@/temp/record.sql