注:虚拟机的内存至少给6个G
设置网络
nmcli conn mod ens33 ipv4.addresses "192.168.1.149/24"
ipv4.gateway "192.168.1.1" ipv4.dns "202.96.209.133"
网卡设置个开机自启动
connection.autoconnect yes ipv4.method manual
centos7.6安装
1.centos7.6
2.yum -y install bash-completion net-tools zip unzip
3.nmcli conn add type ethernet con-name eth0 ifname ens123 ipv4.addresses "10.10.1.6/24" connection.autoconnect yes ipv4.method manual
oracle安装
1.安装依赖包
[root@localhost /]# yum -y install gcc gcc-c++ make binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static glibc glibc-common glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel numactl-devel sysstat unixODBC unixODBC-devel kernelheaders pdksh pcre-devel readline rlwrap
错误:
出现/var/run/yum.pid 已被锁定,PID 为 11154 的另一个程序正在运行。时,
可用以下代码解除锁定
rm -f /var/run/yum.pid
设置环境变量(JDK)
方案一:先在/web/service/目录下上传JDK压缩包并解压。(也可以在根目录下上传WEB包,注web.tar.gz包里没有jdk,需要自己安装) 注:此web包是之前项目配置好的,直接压缩后删减拿过来的。
方案二:在根目录下新建JDK文件,上传对应的JDK。此步骤需要改此(export JAVA_HOME=/web/service/jdk1.8.xxx)路径。
先在/web/service/目录下上传JDK压缩包并解压。
[root@localhost /]# vim /etc/profile 若无法使用VIM,则yum -y install
###添加以下内容
export JAVA_HOME=/web/service/jdk1.8.0_161(JDK版本及安装路径)
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
让修改的环境变量生效
[root@localhost /] source /etc/profile
验证jdk是否生效
[root@localhost /] java -version
2.创建用户和组
[root@localhost /]# groupadd oinstall && groupadd dba && useradd -g oinstall -G dba oracle
[root@localhost /]# echo "输入的密码" | passwd --stdin oracle && id oracle
3.将安装包上传到/data/u01/software目录下
[root@localhost /]# mkdir -p /data/u01/software
[root@localhost /]# cd /data/u01/software
[root@localhost software]# ll
linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip
注:linux.x64_11gR2_database安装包地址:
链接:https://pan.baidu.com/s/10JvEHXf8TDeO7bh36EyGBQ
提取码:2yb1
4.解压此安装包
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
[root@localhost software]# unzip linux.x64_11gR2_database_1of2.zip
[root@localhost software]# unzip linux.x64_11gR2_database_2of2.zip
5.创建目录并赋权
[root@localhost /]# mkdir -p /data/u01/app/oracle/product/11.2.0/dbhome_1
[root@localhost /]# mkdir /data/u01/app/oracle/{oradata,inventory,fast_recovery_area}
[root@localhost /]# chown -R oracle:oinstall /data/u01/app/oracle
[root@localhost /]# chmod -R 775 /data/u01/app/oracle
6.修改内核参数
[root@localhost /]# vi /etc/sysctl.conf
##添加以下内容
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 4194304
kernel.shmmax = 8589934592
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 41944304
#使内核新配置生效
[root@localhost /]# sysctl -p
7.修改用户限制
[root@localhost /]# vim /etc/security/limits.conf
##添加以下内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 10240
8.修改/etc/pam.d/login文件
[root@localhost /]# vim /etc/pam.d/login
##添加以下内容
session required /lib64/security/pam_limits.so
session required pam_limits.so
9.修改/etc/profile文件
[root@localhost /]# vim /etc/profile
##添加以下内容
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
[root@localhost /] source /etc/profile
10.设置oracle环境变量
[root@localhost /]# su - oracle
[oraclet@localhost ~]# vim .bash_profile
##添加以下内容
export ORACLE_BASE=/data/u01/app/oracle
export ORACLE_HOME=/data/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export ORACLE_UNQNAME=$ORACLE_SID
export PATH=$ORACLE_HOME/bin:$PATH
export NLS_LANG=american_america.AL32UTF8
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
#生效
[oraclet@localhost ~]# source .bash_profile
11.#编辑静默安装响应文件
[oraclet@localhost ~]# cp -R /data/u01/software/database/response/ . && cd response/
[oraclet@localhost ~]# vim db_install.rsp
#设置以下内容
oracle.install.option=INSTALL_DB_SWONLY 在29行
ORACLE_HOSTNAME=自己的主机名 //默认为localhost.localdomain 37行
UNIX_GROUP_NAME=oinstall 42行
INVENTORY_LOCATION=/data/u01/app/oracle/inventory 47行
SELECTED_LANGUAGES=en,zh_CN 78行
ORACLE_HOME=/data/u01/app/oracle/product/11.2.0/dbhome_1 83行
ORACLE_BASE=/data/u01/app/oracle 88行
oracle.install.db.InstallEdition=EE 99行
oracle.install.db.DBA_GROUP=dba 142行
oracle.install.db.OPER_GROUP=dba 147行
DECLINE_SECURITY_UPDATES=true 385行
12.安装
[oraclet@localhost ~]# cd /data/u01/software/database/
[oraclet@localhost database]# ./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq
等待几分钟
13.#打开终端,以 root 身份登录,执行脚本:
[oraclet@localhost ~]# su - root
[root@localhost ~]# sh /data/u01/app/oracle/inventory/orainstRoot.sh
[root@localhost ~]# sh /data/u01/app/oracle/product/11.2.0/dbhome_1/root.sh
[root@localhost ~]# vim /etc/hosts
127.0.0.1 后面加上主机名 //默认为localhost.localdomain
14.#用Oracle用户启动
[root@localhost ~]# su - oracle
[oracle@localhost ~]# lsnrctl start
[oracle@localhost ~]# netstat -tunlp|grep 1521
********配置好把下面的这个信息复制到txt(后面可能用于用于PLSQL连接)*******
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain(改成192.168.XX.XXX))(PORT=1521)))
The listener supports no services
The command completed successfully
****************************************************************************************************
15.#配置以静默方式建立新库,和实例 的响应文件
[oracle@localhost ~]# vim /home/oracle/response/dbca.rsp
#设置以下参数
GDBNAME = "orcl" 在78行
SID = "orcl" 142行
SYSPASSWORD = "SYS 用户密码" 190行
SYSTEMPASSWORD = "SYSTEM 用户密码" 200行
SYSMANPASSWORD = "sysman" 231行
DBSNMPPASSWORD = "dbsnmp" 241行
DATAFILEDESTINATION =/data/u01/app/oracle/oradata 357行
RECOVERYAREADESTINATION=/data/u01/app/oracle/fast_recovery_area 367行
CHARACTERSET = "AL32UTF8" 415行
TOTALMEMORY = "6144" 540行
#查看配置结果
[oracle@localhost ~]# egrep -v "(^#|^$)" /home/oracle/response/dbca.rsp
16.#启用配置,以静默方式建立新库,和实例!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[oracle@localhost ~]# dbca -silent -responseFile /home/oracle/response/dbca.rsp
复制数据库文件
1% 已完成
3% 已完成
11% 已完成
....
100% 已完成
//等待几分钟
17.#检查实例后台进程
[oracle@localhost ~]# ps -ef | grep ora_ | grep -v grep
#查看 ORACLE_UNQNAME 环境变量!!!!!!!
[oracle@localhost ~]# env|grep ORACLE_UNQNAME
18.安装依赖包(用于记录操作(上下键进行查看操作记录))
切换到root用户
[oracle@localhost ~]# su - root
[root@localhost ~]# yum -y install readline* nmap perl rlwrap
在~下上传rlwrap-0.43.tar.gz并解压!!!!!!
[root@localhost ~]# tar -zxvf rlwrap-0.43.tar.gz
[root@localhost ~]# cd rlwrap-0.43
[root@localhost rlwrap-0.43]# ./configure && make && make install
19.#以 sysdba 身份登录
[root@localhost ~]# su - oracle
[oracle@localhost ~]# sqlplus / as sysdba
20.#启动 oralce 数据库
SQL>
SQL> select 1 from dual;
SQL> exit
21.关闭防火墙
[oracle@localhost ~]$ su - root
[root@localhost ~]$ systemctl stop firewalld 暂时关闭防火墙
[root@localhost ~]$ systemctl disable firewalld 永久关闭防火墙
三、设置数据库自启动
1、安装好Oracle数据库后: 执行 dbstart和dbshut
[oracle@localhost ~]$ dbstart
ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
Usage: /usr/oracle/product/11.2.0/db_1/bin/dbstart ORACLE_HOME
错误原因:dbstart和dbshut脚本文件中ORACLE_HOME_LISTNER的设置有问题
[oracle@localhost ~]$ vim $ORACLE_HOME/bin/dbstart
[oracle@localhost ~]$ vim $ORACLE_HOME/bin/dbshut
分别打开两个文件修改(80和50行左右)
ORACLE_HOME_LISTNER=$1
修改为:
ORACLE_HOME_LISTNER=$ORACLE_HOME
修改后保存退出,问题解决
[oracle@localhost ~]$ dbstart
2、Linux启动时自动启动Oracle监听和实例
第一步:修改/etc/oratab文件
[oracle@localhost ~]$ vim /etc/oratab
找到: orcl:/usr/oracle/product/11.2.0/db_1:N
修改为: orcl:/usr/oracle/product/11.2.0/db_1:Y
(这个路径跟安装路径有关,$ORACLE_SID:$ORACLE_HOME:<N|Y>)
第二步:把lsnrctl start和dbstart添加到rc.local文件中:
root权限执行
[root@localhost ~]# vim /etc/rc.d/rc.local
#添加:
su - oracle -lc "/data/u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start"
su - oracle -lc "/data/u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart"
##说明:
##第一行为开机启动数据库监听服务,第二行为开机启动数据库。(路径跟安装路径相关)。
##注意:CentOs7中/etc/rc.d/rc.local不会开机执行,需添加执行权限。
查看/etc/rc.d/rc.local的权限
[root@localhost ~]# ll /etc/rc.d/rc.local
添加执行权限
[root@localhost ~]# chmod +x /etc/rc.d/rc.local
3、重启电脑后查看是否自启动成功
查看监听是否自启动成功
oracle用户
[root@localhost ~]# su - oracle
[oracle@localhost ~]$ lsnrctl status LISTENER
查看Oracle服务状态
[oracle@localhost ~]$ ps –ef | grep oracle
4、oracle的启动或关闭管理
[root@localhost oracle]# dbstart #启动
[root@localhost oracle]# dbshut #停止
四、创建XIBU_WMS和XIBU_INF用户
[oracle@localhost /]$ sqlplus / as sysdba
--创建XIBU用户
CREATE TABLESPACE TS_XIBU_WMS_DATA DATAFILE
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_WMS_DATA_01.DBF' SIZE 2G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED,
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_WMS_DATA_02.DBF' SIZE 2G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED;
--创建ZHCXIBU用户索引表空间
CREATE TABLESPACE TS_XIBU_WMS_IDX DATAFILE
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_WMS_IDX_01.DBF' SIZE 1G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED,
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_WMS_IDX_02.DBF' SIZE 1G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED;
**************
这里会提示IDX已存在,不用管,继续下一步:
ERROR at line 1:
ORA-01537: cannot add file
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_WMS_IDX_01.DBF' - file already part
of database
******************
--创建用户时需要把表空间加进去
CREATE USER XIBU_WMS IDENTIFIED BY XIBU_WMS DEFAULT TABLESPACE TS_XIBU_WMS_DATA TEMPORARY TABLESPACE TEMP ;
GRANT CONNECT ,RESOURCE TO XIBU_WMS;
GRANT CREATE SEQUENCE TO XIBU_WMS;
GRANT CREATE SYNONYM TO XIBU_WMS;
GRANT CREATE VIEW TO XIBU_WMS;
alter user xiabu_wms default tablespace TS_XIBU_WMS_DATA;
--创建XIBU_INF用户
CREATE TABLESPACE TS_XIBU_INF_DATA DATAFILE
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_INF_DATA_01.DBF' SIZE 2G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED,
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_INF_DATA_02.DBF' SIZE 2G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED;
--创建ZHCXIBU用户索引表空间
CREATE TABLESPACE TS_XIBU_INF_IDX DATAFILE
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_INF_IDX_01.DBF' SIZE 1G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED,
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_INF_IDX_02.DBF' SIZE 1G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED;
**************
这里会提示IDX已存在,不用gaunt,继续下一步:
ERROR at line 1:
ORA-01537: cannot add file
'/data/u01/app/oracle/oradata/orcl/TS_XIBU_INF_IDX_01.DBF' - file already part
of database
******************
--创建用户时需要把表空间加进去
CREATE USER XIBU_INF IDENTIFIED BY XIBU_INF DEFAULT TABLESPACE TS_XIBU_INF_DATA TEMPORARY TABLESPACE TEMP ;
GRANT CONNECT ,RESOURCE TO XIBU_INF;
GRANT CREATE SEQUENCE TO XIBU_INF;
GRANT CREATE SYNONYM TO XIBU_INF;
GRANT CREATE VIEW TO XIBU_INF;
alter user xiabu_inf default tablespace TS_XIBU_INF_DATA;
部署结束,导入数据在下面步骤五、导入导出数据
**************************************************************************************
上传对应的WEB包,启动时先把对应的redis 端口开启:
/web/service/redis/bin/redis-server ../conf/端口号.conf
关闭redis端口
/web/service/redis/bin/redis-cli -p redis端口号 shutdown
更换授权文件目录
把路径给为这个/web/license/
vim /web/src/wms/WEB-INF/classes/license-config.properties
*************************************************************************************
*************************************************************************************
*************************************************************************************
#重启数据库:
[oracle@localhost ~]$ sqlplus / as sysdba
SQL> shutdown immediate 关闭数据库
SQL> startup 数据库启动
SQL> exit
[oracle@localhost ~]$ lsnrctl stop 停掉lsnrctl
[oracle@localhost ~]$ lsnrctl start 启用监听
当表空间和索引删除不掉时,或者提示已存在无法创建等情况,去/data/u01/app/oracle/oradata/orcl
目录下把对应的文件删除即可。
删除表空间
删除无任何数据对象的表空间:
首先使用PL/SQL界面化工具,或者使用oracle自带的SQL PLUS工具,连接需要删除的表空间的oracle数据局库。
确认当前用户是否有删除表空间的权限,如果没有 drop tablespace,请先用更高级的用户(如sys)给予授权或者直接用更高级的用户。
用drop tablespace xxx ,删除需要删除的表空间。
删除有任何数据对象的表空间
使用drop tablespace xxx including contents and datafiles;来删除表空间。
注意事项:
如果drop tablespace语句中含有datafiles,那datafiles之前必须有contents关键字,不然会提示ora-01911错误
以上就是表空间的删除方法,但是小编友情提示,还是不要随意删除,一旦操作不当,就会使得自己的数据库无法使用了。
redis启动:
[root@localhost bin]# ./redis-server ../conf/6379.conf
[root@localhost bin]# ./redis-server ../conf/6380.conf
[root@localhost bin]# ./redis-server ../conf/6381.conf
78的要给权限
chmod -R 775 /web/*
[root@localhost webserver]# apache-tomcat-8.5.78-YYY-9082/bin/startup.sh
[root@localhost webserver]# apache-tomcat-8.5.78-MMM-9081/bin/startup.sh
[root@localhost webserver]# apache-tomcat-8.5.78-WMS-9080/bin/startup.sh
五、导出导入数据(接口同理)
备份导出ORACLE数据库
su - oracle
expdp XIBU_WMS/XIBU_WMS directory=dp_dir dumpfile=XIBU20220622.dmp logfile=XIBU20220622.log schemas=XIBU_WMS;
备份导入ORACLE数据库
su - oracle
impdp XIBU_WMS/XIBU_WMS@orcl directory=dp_dir dumpfile=XIBU20220622.dmp logfile=XIBU20220622.log schemas=XIBU_WMS table_exists_action=replace ignore=y;
***********************************注释***************************************
备份导出ORACLE数据库
su - oracle
expdp XIBU_WMS(用户名)/XIBU_WMS(密码) directory=dp_dir dumpfile=XIBU20220622(用户名_时间).dmp logfile=XIBU20220622(用户名_时间).log schemas=XIBU_WMS(用户名);
备份导入ORACLE数据库
su - oracle
impdp XIBU_WMS(用户名)/XIBU_WMS(用户名)@orcl directory=dp_dir dumpfile=XIBU20220622(备份文件名).dmp logfile=XIBU20220622(备份文件名).log schemas=XIBU_WMS table_exists_action=replace ignore=y;
*******************************************************************************