快速尝鲜Oracle 23c免费开发者版,惊喜多多
Posted IT邦德
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快速尝鲜Oracle 23c免费开发者版,惊喜多多相关的知识,希望对你有一定的参考价值。
📢📢📢📣📣📣
哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验
一位上进心十足的【大数据领域博主】!😜😜😜
中国DBA联盟(ACDU)成员,目前服务于工业互联网
擅长主流Oracle、mysql、PG、高斯及GP 运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
✨ 如果有对【数据库】感兴趣的【小可爱】,欢迎关注【IT邦德】💞💞💞
❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️
文章目录
前言
2023年4月3日, Oracle CloudWorld Tour –甲骨文宣布推出免费版 Oracle Database 23c,本博客介绍了23C的部署及新特性📣 1.23C概述
2023年4月3日, Oracle CloudWorld Tour –甲骨文宣布推出免费版 Oracle Database 23c。新的Oracle Database 23c 免费版 — 开发人员版本 满足了全球开发人员和组织日益增长的访问 Oracle Database 23c“ App Simple ”中最新特性的需求。开发人员现在可以使用创新的 Oracle 数据库特性,这些特性可以简化现代数据驱动应用程序的开发,让他们为计划中的下一个长期支持版本 Oracle 数据库 23c 版本做好准备。
Oracle Database 23c 免费版——开发人员版可 作为 Docker Image、VirtualBox VM 或 Linux RPM 安装文件下载,
无需用户帐户或登录。计划很快推出 Windows 版本
官方下载地址:
https://www.oracle.com/database/technologies/free-downloads.html
📣 2.环境准备
操作系统: Oracle Linux 8.7
数据库: Oracle Database 23c Free - Developer Release
安装包:
OracleLinux-R8-U7-x86_64-dvd.iso
oracle-database-free-23c-1.0-1.el8.x86_64.rpm
oracle-database-preinstall-23c-1.0-0.5.el8.x86_64
Oracle Linux官方网址:
https://yum.oracle.com/oracle-linux-isos.html
📣 3.环境配置
✨ 3.1 关闭防火墙
[root@OEL8 ~]# systemctl stop firewalld.service
[root@OEL8 ~]# systemctl disable firewalld.service
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@OEL8 ~]# systemctl status firewalld.service
✨ 3.2 SELINUX关闭
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
注:更改后记得重启服务器生效
[root@OEL8 ~]# /usr/sbin/sestatus
SELinux status: disabled
✨ 3.3 avahi服务停止
systemctl stop avahi-daemon.socket
systemctl stop avahi-daemon
systemctl disable avahi-daemon.socket
systemctl disable avahi-daemon
✨ 3.4 host设置
[root@OEL8 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
##新增ip与host的对应关系
192.168.6.66 OEL8
📣 4.yum配置
[root@OEL8 opt]# mount | grep sr0
/dev/sr0 on /run/media/root/OL-8-7-0-BaseOS-x86_64 type iso9660 (ro,nosuid,nodev,relatime,nojoliet,check=s,map=n,blocksize=2048,uid=0,gid=0,dmode=500,fmode=400,iocharset=utf8,uhelper=udisks2)
[root@OEL8 ~]# cd /etc/yum.repos.d
[root@OEL8 yum.repos.d]# vi server.repo
[AppStream]
name=Linux
enable=1
gpgcheck=0
baseurl=file:///run/media/root/OL-8-7-0-BaseOS-x86_64/AppStream
[BaseOS]
name=Linux
enable=1
gpgcheck=0
baseurl=file:///run/media/root/OL-8-7-0-BaseOS-x86_64/BaseOS
[root@OEL8 yum.repos.d]# yum repolist
[root@OEL8 yum.repos.d]# yum repolist
repo id repo name
AppStream Linux
BaseOS Linux
📣 5.安装数据库
1.上传安装包至 /opt目录下
[root@OEL8 ~]# cd /opt
[root@OEL8 opt]# ll
-rw-r--r-- 1 root root 1758776440 Apr 5 09:49 oracle-database-free-23c-1.0-1.el8.x86_64.rpm
-rw-r--r-- 1 root root 30688 Apr 5 09:49 oracle-database-preinstall-23c-1.0-0.5.el8.x86_64.rpm
2.安装预安装包
[root@OEL8 opt]# yum -y localinstall oracle-database-preinstall-23c*
3.安装数据库
[root@OEL8 opt]# yum -y localinstall oracle-database-free-23c*
📣 6.数据库配置
1.修改配置文件
[root@OEL8 ~]# vi /etc/sysconfig/oracle-free-23c.conf
#This is a configuration file to setup the Oracle Database.
#It is used when running '/etc/init.d/oracle-free-23c configure'.
# LISTENER PORT used Database listener, Leave empty for automatic port assignment
LISTENER_PORT=1521
# Character set of the database
CHARSET=AL32UTF8
# Database file directory
# If not specified, database files are stored under Oracle base/oradata
DBFILE_DEST=/app/oracle/oradata/
# DB Domain name
DB_DOMAIN=23cfree
# SKIP Validations, memory, space
SKIP_VALIDATIONS=false
2.创建目录、授权
[root@OEL8 ~]# mkdir -p /app/oracle/oradata/FREE
[root@OEL8 ~]# chmod 775 -R /app
[root@OEL8 ~]# chown oracle:oinstall -R /app
3.启动数据库
##此处设置密码为:Orace123456
[root@OEL8 ~]# /etc/init.d/oracle-free-23c configure
📣 7.访问数据库
1.查看数据状态
[root@OEL8 ~]# /etc/init.d/oracle-free-23c status
Status of the Oracle FREE 23c service:
LISTENER status: RUNNING
FREE Database status: RUNNING
2.环境变量设置
[oracle@OEL8 ~]$ vi .bash_profile
export ORACLE_SID=FREE
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/23c/dbhomeFree
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export CLASSPATH=$ORACLE_HOME/JRE:ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
[oracle@OEL8 ~]$ source .bash_profile
3.服务器登陆数据库
[oracle@OEL8 ~]$ sqlplus / as sysdba
4.远程登陆数据库
[oracle@OEL8 ~]$ sqlplus sys/Orace123456@192.168.6.66:1521/FREE.23cfree as sysdba
📣 8.新特性
(1) 不带FROM子句的SELECT查询
在Oracle 23c中,第一次实现了不带From子句的查询,也不需要dual
SQL> ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';
Session altered.
SQL> SELECT SYSDATE;
SYSDATE
-------------------
2023-04-05 11:27:55
(2) 单表支持4096列
Oracle 此前版本单表支持1000列。
在23c中,单表支持列数量扩展到4096列,启用这一个特性需要将兼容性参数设置为23.0.0,同时将 Max_columns设置为Extended。
SQL> show parameter MAX_COLUMNS;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
max_columns string STANDARD
SQL> alter system set MAX_COLUMNS=EXTENDED scope=spfile;
注:静态参数修改,需要重启数据库
SQL> shu immediate;
SQL> startup
SQL> show parameter MAX_COLUMNS;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
max_columns string EXTENDED
(3)SCHEMA级别的权限
在23c之前的版本,如果针对Schema对其他用户进行授权,需要通过系统权限或对象权限分别显式地授予,
这对数据库带来了额外的安全风险或复杂性。
在Oracle 23中,可以对Schema进行授权,简化了之前的权限操作,
grant select any table on SCHMEA GSMUSER to DIP;
(4)Boolean数据类型
在Oracle Database 23c中,布尔数据类型被支持
create table test(name varchar2(100),flag BOOLEAN);
INSERT INTO test VALUES('jeames',1);
INSERT INTO test VALUES('IT',True);
INSERT INTO test VALUES('hefei',1);
INSERT INTO test VALUES('abc',FALSE);
select name from test where flag;
SQL> select name from test where flag;
NAME
------------
jeames
IT
hefei
(5)基于别名的GROUP BY
在Oracle Database 23c中,现在支持基于别名、位置的GROUP BY,这大大简化了SQL文本和编写
select extract(year FROM hire_date) as hire_year,count(*)
from employees
group by hire_year
having hire_year>1985;
(6)DDL的 IF EXISTS判断
在Oracle Database 23c中,DDL支持通过 IF [NOT] EXISTS 判断,从而规避执行过程中的错误、异常和中断
创建表时指定:
CREATE TABLE IF NOT EXISTS Customers (ID NUMBER(10), Name VARCHAR2(100));
删除表时指定:
DROP TABLE IF EXISTS Customers;
postgreSQL15发布,难掩激动快速尝鲜
📢📢📢📣📣📣
哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA工作经验
一位上进心十足的【大数据领域博主】!😜😜😜
中国DBA联盟(ACDU)成员,目前从事DBA及程序编程
擅长主流数据Oracle、MySQL、PG 运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
✨ 如果有对【数据库】感兴趣的【小可爱】,欢迎关注【IT邦德】💞💞💞
❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️
文章目录
前言
PostgreSQL全球开发小组与2022年10月13日,宣布发布PostgreSQL15,这是世界上最先进的开源数据库的最新版本📣 1.新版本发布
1.官方网址:
https://www.postgresql.org/
PostgreSQL是一个功能强大的开放源码对象关系数据库系统,经过35年的积极开发,它在可靠性、功能健壮性和性能方面享有盛誉。
PostgreSQL全球开发小组与2022年10月13日,宣布发布PostgreSQL15,这是世界上最先进的开源数据库的最新版本。
PostgreSQL 15基于最近版本的性能改进,在管理本地和分布式部署中的工作负载方面取得了显著的进步。
PostgreSQL 15包含许多新功能和增强功能,大致包括:
1.支持SQL MERGE命令。
2.通过指定列列表和行筛选条件,在逻辑复制发布中选择性地发布表的内容。
3.更多压缩选项,包括支持Zstandard(zstd)压缩。这包括支持在pg_basebackup期间在服务器端执行压缩。
4.支持使用JSON格式的结构化服务器日志输出。
5.性能改进,特别是在内存和磁盘排序方面。
📣 2.yum在线安装
✨ 2.1 删除原有PG
yum remove -y postgresql*
rm -rf /var/lib/pgsql
rm -rf /usr/pgsql*
userdel -r postgres
groupdel postgres
✨ 2.2 安装yum源
[root@jeames ~]# yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
✨ 2.3 安装PG15
[root@jeames ~]# yum-config-manager --enable pgdg15
[root@jeames ~]# yum repolist enabled | grep pgdg
pgdg-common PostgreSQL common RPMs for RHEL / Rocky 8 - x86_64
pgdg10 PostgreSQL 10 for RHEL / Rocky 8 - x86_64
pgdg11 PostgreSQL 11 for RHEL / Rocky 8 - x86_64
pgdg12 PostgreSQL 12 for RHEL / Rocky 8 - x86_64
pgdg13 PostgreSQL 13 for RHEL / Rocky 8 - x86_64
pgdg14 PostgreSQL 14 for RHEL / Rocky 8 - x86_64
pgdg15 PostgreSQL 15 for RHEL / Rocky 8 - x86_64
[root@jeames ~]# yum module disable postgresql
[root@jeames ~]# yum install -y postgresql15 postgresql15-server postgresql15-libs postgresql15-contrib
✨ 2.4 验证安装
[root@jeames ~]# rpm -aq| grep postgres
postgresql15-15.0-1PGDG.rhel8.x86_64
postgresql15-server-15.0-1PGDG.rhel8.x86_64
postgresql15-contrib-15.0-1PGDG.rhel8.x86_64
postgresql15-libs-15.0-1PGDG.rhel8.x86_64
以上说明已经全部安装OK
✨ 2.5 环境变量设置
[root@jeames ~]# which psql
/usr/bin/psql
[root@jeames ~]# echo "export PATH=/usr/pgsql-15/bin:$PATH" >> /etc/profile
[root@jeames ~]# source /etc/profile
✨ 2.6 初始化PG
[root@jeames ~]# /usr/pgsql-15/bin/postgresql-15-setup initdb
Initializing database ... OK
[root@jeames ~]# systemctl status postgresql-15
[root@jeames ~]# systemctl start postgresql-15
[root@jeames ~]# systemctl enable postgresql-15
✨ 2.7 登陆PG
以下方法是本地登陆
[root@jeames ~]# su - postgres
[postgres@jeames ~]$ psql
psql (15.0)
Type "help" for help.
postgres=# \\c
You are now connected to database "postgres" as user "postgres".
postgres=# \\l
List of databases
Name | Owner | Encoding | Collate | Ctype | ICU Locale | Locale Provider | Access privileges
-----------+----------+----------+-------------+-------------+------------+-----------------+-----------------------
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | libc |
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
(3 rows)
✨ 2.8 postgres密码修改
postgres=# \\password
Enter new password for user "postgres":
Enter it again:
注意:以上输入密码即可
📣 3.PG参数设置
[root@jeames ~]# su - postgres
cat >> /var/lib/pgsql/15/data/postgresql.conf <<"EOF"
listen_addresses = '*'
port=5432
unix_socket_directories='/var/lib/pgsql/15/data'
logging_collector = on
log_directory = 'pg_log'
log_filename = 'postgresql-%a.log'
log_truncate_on_rotation = on
EOF
📣 4.PG白名单设置
[root@jeames ~]# su - postgres
cat > /var/lib/pgsql/15/data/pg_hba.conf << EOF
# TYPE DATABASE USER ADDRESS METHOD
host all all 0.0.0.0/0 trust
EOF
## root用户下启动
[root@jeames ~]# systemctl restart postgresql-15
📣 5.远程登陆
其他服务器:
C:\\Users\\wangd> psql -U postgres -h X.X.X.X -d postgres -p5432
📣 6.建表测试
postgres=# CREATE DATABASE mesdb WITH OWNER=postgres ENCODING='UTF-8';
CREATE DATABASE
postgres=# \\c mesdb
You are now connected to database "mesdb" as user "postgres".
create table student (
id integer not null,
name character(32),
number char(5),
constraint student_pkey primary key (id)
);
mesdb=# \\d student
Table "public.student"
Column | Type | Collation | Nullable | Default
--------+---------------+-----------+----------+---------
id | integer | | not null |
name | character(32) | | |
number | character(5) | | |
Indexes:
"student_pkey" PRIMARY KEY, btree (id)
mesdb=# INSERT INTO student (id, name, number) VALUES (1, 'IT邦德', '10086');
INSERT 0 1
mesdb=# SELECT * FROM student WHERE id=1;
id | name | number
----+------------------------------------+--------
1 | IT邦德 | 10086
(1 row)
以上是关于快速尝鲜Oracle 23c免费开发者版,惊喜多多的主要内容,如果未能解决你的问题,请参考以下文章
微软 Visual Studio 2017 中文正式版下载 – 免费社区版/专业版/企业版