Oracle 23ai FREE 相关学习记录
Oracle 23ai FREE 命令
Oracle 23ai FREE
默认只能有一个数据库FREE,Oracle的用户和SqlServe的多个数据库实例相互对应,oracle每个用户管理自己的表,sqlserver使用数据库实例管理自己的表。
SHOW PARAMETER spfile;
确定当前使用的参数文件
SHUTDOWN IMMEDIATE;
关闭数据库
STARTUP;
开启数据库
检查时间戳格式
1 | SHOW PARAMETER nls_timestamp_format; |
SELECT name, value FROM v$spparameter WHERE name LIKE 'nls%';
来查询 spfile
中的当前设置(系统级),结果如下:
1 | SQL> SELECT name, value FROM v$spparameter WHERE name LIKE 'nls%'; |
Oracle参数级别 系统级 数据库级() 会话级
在Oracle数据库中,参数级别指的是不同级别上设置的配置参数,它们控制数据库实例的行为和性能。参数的级别划分为以下几种:
- 实例级别(Instance-level Parameters):
- 影响整个数据库实例的配置参数。这些参数通常在数据库启动时设置,且会影响整个数据库实例的内存分配、连接限制、后台进程等。
- 例如:
db_cache_size
,shared_pool_size
,sga_target
,pga_aggregate_target
等。 - 修改这些参数通常需要通过
spfile.ora
文件或ALTER SYSTEM
命令,并且这些修改会在数据库实例启动时生效。
- 系统级别(System-level Parameters):
- 系统级别的参数控制数据库系统的配置,影响数据库的整体操作和行为。这些参数包括实例级别的设置,并且一般通过
ALTER SYSTEM
命令来修改。 - 例如:
processes
,undo_tablespace
,log_buffer
,db_block_size
等。 - 如果使用
spfile.ora
来管理系统级参数,修改时通常需要通过ALTER SYSTEM
命令,修改的参数会保存在spfile.ora
文件中,确保在数据库下次启动时生效。
- 系统级别的参数控制数据库系统的配置,影响数据库的整体操作和行为。这些参数包括实例级别的设置,并且一般通过
- 会话级别(Session-level Parameters):
- 只影响当前用户会话的参数。这些参数可以在会话中动态调整,而不影响其他会话。
- 例如:
NLS_LANGUAGE
,NLS_DATE_FORMAT
,cursor_sharing
,optimizer_mode
等。 - 这些设置通常通过
ALTER SESSION
命令进行调整,仅对当前会话有效。 - 使用示例:
ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD';
- 自动化(Automatic)参数:
- 由Oracle自动管理的参数,主要与内存管理和性能调优相关。例如,Oracle会根据负载自动调整内存分配。
- 例如:
sga_target
,pga_aggregate_target
等。 - 这些参数允许数据库自动优化系统性能,而不需要手动干预。
设置参数的常用命令:
查看当前参数值:
1
SHOW PARAMETER <parameter_name>;
修改实例级别或系统级别参数:
1
2ALTER SYSTEM SET <parameter_name> = <value> SCOPE=BOTH;
ALTER SYSTEM SET <parameter_name> = <value> SCOPE=SPFILE;SCOPE=BOTH
:表示立即生效并保存在spfile.ora
中。SCOPE=SPFILE
:表示只在下次数据库启动时生效,修改会保存到spfile.ora
中。
修改会话级别参数:
1
ALTER SESSION SET <parameter_name> = <value>;
总结:
在Oracle数据库中,参数级别分为 实例级别、系统级别、会话级别 和 自动化 四个层次。每个层级的参数控制不同范围的行为,DBA可以根据需要进行设置和调整。spfile.ora
文件通常用于系统级别的配置,并确保在数据库重启时生效。
Oracle重启命令
在 Oracle 数据库中,重启数据库的过程分为三个步骤:关闭数据库(SHUTDOWN
)、启动数据库到挂载状态(STARTUP MOUNT
),然后再打开数据库(ALTER DATABASE OPEN
)。以下是详细步骤和常用的命令:
1. 关闭数据库
1 | SHUTDOWN IMMEDIATE; |
- IMMEDIATE:立即关闭,正在进行的事务会被回滚。
- NORMAL:正常关闭,所有用户会话正常结束。
- TRANSACTIONAL:等待所有当前事务结束后关闭。
- ABORT:强制关闭,不推荐,因为可能导致数据库不一致。
2. 启动数据库
1 | STARTUP; |
或者更细致的启动方式:
启动到挂载状态(通常用于备份或其他维护操作):
1
STARTUP MOUNT;
启动到打开状态(正常启动):
1
ALTER DATABASE OPEN;
一次性启动到完全开放状态:
1 | STARTUP; |
3. 检查数据库状态
可以通过以下命令查看当前数据库状态:
1 | SELECT STATUS FROM V$INSTANCE; |
在命令行使用
如果你在操作系统的命令行使用 sqlplus
连接到数据库:
1 | sqlplus / as sysdba |
然后输入上述 SQL 命令来重启数据库。
请注意,在进行数据库重启之前,确保所有必要的数据都已保存和备份。
Oracle 监听
lsnrctl status
查看监听状态
1 | LSNRCTL for 64-bit Windows: Version 23.0.0.0.0 - Production on 10-1月 -2025 11:21:45 |
lsnrctl start
开启监听
lsnrctl stop
停止监听
如果监听无法启动,可以尝试修改listener.ora
,将连接名改为127.0.0.1.
Oracle登录
sqlplus sys/wyd048062.. as sysdba
sqlplus C##_WYD/084062
Oracle 23ai FREE 相关学习记录
https://flsy.netlify.app/2025/03/09/Oracle/Oracle学习记录/Oracle 23ai FREE 相关学习记录/