参考链接:https://blog.csdn.net/CASDASDA/article/details/123140253
一、系统要求以及准备
- 物理内存不小于1G: 查看方式:
# grep MemTotal /proc/meminfo
- 可用硬盘不小于8G: 查看方式:
# df -h
3.Swap分区空间不小于2G: 查看方式:
# grep SwapTotal /proc/meminfo
- 关闭firewalld防火墙
# systemctl status firewalld.service #查看firewalld防火墙状态
# systemctl stop firewalld.service #关闭firewalld防火墙
# systemctl disable firewalld.service #禁止开机使用firewalld防火墙
- 修改CentOS系统标识 (由于Oracle默认不支持CentOS)#这步没有执行,应该是不影响
修改文件: /etc/redhat-release
将文件内容替换为:
redhat-7
6.修改内核参数
修改文件: /etc/sysctl.conf
添加以下内容:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
kernel.shmmax = 2147483648
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
net.core.rmem_default = 262144
net.core.rmem_max= 4194304
net.core.wmem_default= 262144
net.core.wmem_max= 1048576
修改完后,启用新的配置:
# sysctl -p
二、正式安装:oracle
1.安装oracle
执行如下命令行(按需修改成自己的目录)
/DBdata/src/database/runInstaller -silent -responseFile /DBdata/src/database/response/db_install.rsp -ignorePrereq
2.root下执行脚本
/DBdata/inventory/orainstRoot.sh
/DBdata/oracle/product/11.2.0.4.0/db_1/root.sh
3.启动监听
/DBdata/oracle/product/11.2.0.4.0/db_1/bin/netca /silent /responseFile /DBdata/src/database/response/netca.rsp
查看监听程序是否运行
netstat -tnulp | grep 1521
4.添加实例:
注:dbca.rsp配置文件的字符集要配置为ZHS16GBK
(导出数据的orcale字符集要与导入的oracle的字符集一致)
修改以下两个参数:
CHARACTERSET = "ZHS16GBK"
NATIONALCHARACTERSET= "ZHS16GBK"
/DBdata/oracle/product/11.2.0.4.0/db_1/bin/dbca -silent -createDatabase -responseFile /DBdata/src/database/response/dbca.rsp
查看实例是否运行
ps -ef | grep ora_ | grep -v grep
三、数据导入
1.以管理员身份登录
2.创建directory (用来存放.dmp等库文件的共享目录)
create or replace directory datatmp as ‘/home/yxwzhuser’;
将目录权限赋值给sysdba用户(这步可能不需要)
grant read,write on directory datatmp to sysdba;
3.导入数据:
需要先建表空间:
① 先找到源数据库的表空间
impdp ‘/as sysdba’ directory=datatmp file=20220815_01.dmp logfile=20220824_1.log full=y sqlfile=aaa.txt
② 再手动执行创建表空间的语句;sqlplus /as sysdba 进入管理员模式
例如:
再进行数据导入:
nohup impdp ‘/as sysdba’ directory=datatmp file=20220815_01.dmp logfile=20220824_1.log schemas=CHAXUN,KIDM &
4.如果导入出现报错,建议先删除用户数据,再导入
删除用户数据:
drop user kidm cascade;(kidm是用户名)
drop user chaxun cascade;(chaxun是用户名)
四、其它:
1.创建用户
create user chaxun identified by 123456;
2. 权限问题参考:https://blog.csdn.net/sysu_xiamengyou/article/details/105293410
alter user kidm identified by kidm;
3.因为当前用户有连接不能删除当前用户时;查询当前连接在连接的进程
SELECT SID, SERIAL# FROM V$SESSION WHERE USERNAME = ‘KIDM’;
可以先重启数据库重(Reset)
startup force;
相当于shutdown abort和startup。
此时再查询连接该用户的进程时为空:
SELECT SID, SERIAL# FROM V$SESSION WHERE USERNAME = ‘KIDM’;