优秀的编程知识分享平台

网站首页 > 技术文章 正文

小白可以收藏的Oracle数据库安装部署方式

nanyue 2024-07-23 13:20:45 技术文章 9 ℃

本文中,主要介绍关于Oracle数据在Cent OS操作系统上部署过程,有需要的同学,可以自行实践验证,若是有更好的安装部署方式,也可以留言。。。

一、前置安装包

yum install -y libaio bc flex net-tools

二、安装Oracle rpm

# 文件加速下载地址:https://ghproxy.com/https://github.com/liushilive/github_exercise_linux/releases/download/1.0/oracle-xe-11.2.0-1.0.x86_64.rpm
curl -L -O https://github.com/liushilive/github_exercise_linux/releases/download/1.0/oracle-xe-11.2.0-1.0.x86_64.rpm
rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm

三、配置Oracle

  • Oracle Application Express 的有效 HTTP 端口(默认值为 8080)
  • Oracle 数据库侦听器的有效端口(默认为 1521)
  • SYS 和 SYSTEM 管理员帐户密码:123456
  • 确认 SYS 和 SYSTEM 管理员帐户的密码:123456
  • 数据库在计算机启动时自动启动(下次重新引导)
echo -e "\n\n123456\n123456\ny" | /etc/init.d/oracle-xe configure

注意,上面的默认密码为 123456 需要的自行修改一下!!!!

四、配置环境变量

cd ~
cat >> .bash_profile << EOF
. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh
EOF

让环境变量生效:

su -

五、允许远程访问

sqlplus "sys/123456 as sysdba" <<EOF
EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
EOF

注意:上面的密码若是修改了,此处应该填写正确的密码!!

六、配置防火墙

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --reload

以通过下面的地址访问确认是否安装成功

http://<server-ip>:8080/apex/f?p=4950:1 用户名:system 密码:123456

七、开启Swap

这块可以自行根据服务器实际情况,进行设置,这里给出一个文章参考:

参考:https://blog.csdn.net/weixin_42697074/article/details/104028459

相关脚本如下:

# step1 
free -h

# step2 创建swap文件
#进入一个打算放置swapfile的目录(这里是放在 var 目录下)
cd /var/
 
#创建大小为1024*1024*32的文件swapfile 
dd if=/dev/zero of=swapfile bs=1024 count=33554432 
 
#设置成交换分区文件
mkswap swapfile
 
#启用此交换分区的交换功能
swapon swapfile 
# 注:如果在 /etc/rc.local 中有 swapoff -a 需要修改为 swapon -a

# step3 设置开机时自启用 SWAP 分区
echo "/var/swapfile swap swap defaults 0 0" >> /etc/fstab

八、常见Oracle表空间、用户

Oracle需要创建表空间、用户等。相关步骤如下:

8.1 创建临时表空间

create temporary tablespace ILLEGAL_TEMP
	tempfile '/u01/app/oracle/oradata/XE/illegal_temp.dbf'                  
	size 50m  
	autoextend on  
	next 50m maxsize unlimited  
	extent management local;

8.2 创建数据表空间

create tablespace ILLEGAL_DATA
   logging  
   datafile '/u01/app/oracle/oradata/XE/illegal.dbf' 
   size 50m  
   autoextend on  
   next 50m maxsize unlimited  
   extent management local;

8.3 创建用户并指向表空间

create user demo identified by demo
   default tablespace ILLEGAL_DATA  
   temporary tablespace ILLEGAL_TEMP;  

8.4 给用户授予权限

grant connect,resource,dba to ss_dba;

九、常见问题及解决办法

9.1 重启Oracle

# 进入到Oracle的home路径下
cd /u01/app/oracle/product/11.2.0/xe/bin

# dba linux用户登录
su oracle

# 停止监听
lsnrctl stop

# 连接dba,停止数据库
$ sqlplus /nolog
SQL > conn / as sysdba
SQL > shutdown immediate
SQL > exit

$ lsnrctl start

# 连接dba 启动Oracle服务
$ sqlplus /nolog
SQL > conn / as sysdba
SQL > startup

# 验证:
SQL > select * from dual;
SQL > exit

9.2 PL/SQL连接出现“ORA-12516 TNS: 监听程序找不到符合协议堆栈要求的可用处理程序”解决

# 登录Oracle服务器

# system/123456
$ sqlplus 

# 查看当前数量
SQL >  select count(*) from v$process;

# 连接成功后,执行如下语句
# 注意,sessions = processes*1.5 + 5;
SQL >  alter system set processes=1000 scope=spfile;
SQL >  alter system set sessions=1505 scope=spfile;

# 重启数据库,参考 9.1 小节

9.3 Oracle出现 ora-01045解决方法

# 使用系统用户登录后,使用如下sql语句给出错用户赋权限

grant create session to UserName; # (UserName是登录出错的用户名)

相关问题,欢迎留言提问;欢迎大家点赞、关注、收藏~


最近发表
标签列表