0x-4-Oracle 23 ai-sqlcl 25.1.1 獨立安裝-配置和優化

一、獨立安裝sqlcl

1. ?安裝 Java 環境?

SQLcl 需要 Java 1.8.0_220 或更高版本,

Oracle Linux9.6 上已經默認安裝Oracle 23ai后Java 是11 lts版本

如果java jdk安裝錯誤將遇上SQLcl困擾n多人的bug

sql /nolog
錯誤:找不到或加載主類 oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli
原因:java.lang.ClassNotFoundException:oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli

bash復制# 檢查當前 Java 版本
java -version# 若未安裝或版本過低,安裝 OpenJDK 17(推薦)
sudo dnf install java-17-openjdk-devel# 設置 JAVA_HOME(根據實際路徑調整)
echo "export JAVA_HOME=/usr/lib/jvm/java-17-openjdk" >> ~/.bashrc
source ~/.bashrc[oracle@OL96 ~]$ which java
/usr/bin/java
[oracle@OL96 ~]$ which sqlcl
/usr/bin/which: no sqlcl in (/opt/oracle/product/23ai/dbhomeFree/bin:/home/oracle/.local/bin:/home/oracle/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/usr/lib/jvm/java-11-openjdk/bin:/opt/sqlcl/bin:/opt/sqlcl/bin:/opt/sqlcl/bin:/usr/lib/jvm/java-11-openjdk/bin)
2. ?下載并安裝 SQLcl--默認安裝了一個版本

可以獨立下載

SQLcl Downloads

也可以直接wget??

# 下載最新版 SQLcl(當前最新為 25.1.1)--20250607
wget https://download.oracle.com/otn_software/java/sqldeveloper/sqlcl-latest.zip
unzip sqlcl-latest.zip -d /opt/
[root@OL96 home]# wget https://download.oracle.com/otn_software/java/sqldeveloper/sqlcl-latest.zip
--2025-06-08 00:10:08--  https://download.oracle.com/otn_software/java/sqldeveloper/sqlcl-latest.zip
Resolving download.oracle.com (download.oracle.com)... 23.35.208.76
Connecting to download.oracle.com (download.oracle.com)|23.35.208.76|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 87557295 (84M) [application/zip]
Saving to: ‘sqlcl-latest.zip’sqlcl-latest.zip                  100%[=============================================================>]  83.50M  2.26MB/s    in 57s2025-06-08 00:11:07 (1.47 MB/s) - ‘sqlcl-latest.zip’ saved [87557295/87557295]# 設置環境變量
echo 'export PATH=$PATH:/opt/oracle/sqlcl/bin' >> ~/.bashrc
source ~/.bashrc

2. 查找默認的sqlcl路徑和rpm安裝的sqlcl?

---可以使用默認的sql也可以用dnf install 下載最新的sqlcl,需要提前添加oracle linux repo
sudo dnf config-manager --add-repo https://yum.oracle.com/repo/OracleLinux/OL9/oracle/software/x86_64
sudo dnf install sqlcl
--這個sqlcl安裝后,會在/opt/oracle/sqlcl路徑下。
而原生的隨著oracle 23 ai free安裝的sql在/opt/oracle/product/23ai/dbhomeFree/sqlcl/bin--需要修改oracle下的.bash_profile文件,才能正常使用sqlcl
--關鍵設置export PATH=$PATH:/opt/oracle/product/23ai/dbhomeFree/sqlcl/bin
[oracle@OL96 ~]$ vi .bash_profile
--
[oracle@OL96 ~]$ cat .bash_profile
# .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programs
export ORACLE_HOME=/opt/oracle/product/23ai/dbhomeFree
export ORACLE_SID=FREE
export PATH=$ORACLE_HOME/bin:$PATH
export PATH=$PATH:/opt/oracle/product/23ai/dbhomeFree/sqlcl/bin
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
export PATH=$PATH:$JAVA_HOME/bin
[oracle@OL96 ~]$
--
[oracle@OL96 ~]$ source .bash_profile
[oracle@OL96 ~]$ sql / as sysdba
SQLcl: Release 25.1 Production on Sun Jun 08 09:33:25 2025Copyright (c) 1982, 2025, Oracle.  All rights reserved.Connected to:
Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.8.0.25.04

3. ?配置 SQLcl 基礎連接?

# 連接 Oracle 23ai Free 數據庫
sql username/password@//localhost:1521/FREE# 或使用 EZConnect 格式
sql user@//db_host:1521/service_name
4. ?啟用 23ai 特性支持?

在 SQLcl 中設置兼容性參數:

-- 在 SQLcl 會話中執行
SET SQLCOMPATIBILITY '23'
5. ?常用配置優化
-- 啟用自動補全(默認開啟)
SET AUTOTRACE ON-- 設置歷史記錄(保存 1000 條命令)
SET HISTSIZE 1000-- 啟用 JSON 輸出格式(適合 23ai 的 JSON 功能)
SET SQLFORMAT JSON-- 顯示執行時間
SET TIMING ON

6. ?23ai 特定功能配置?

-- 向量搜索示例(使用 23ai 的 AI Vector Search)
SELECT content 
FROM documents 
ORDER BY VECTOR_DISTANCE(embedding, :query_vector) 
FETCH FIRST 5 ROWS ONLY;
7. ?登錄屬性配置?

創建?$HOME/sqlcl/login.sql?自動加載腳本:

-- login.sql 內容
SET SQLFORMAT ANSICONSOLE
SET FEEDBACK 1
DEFINE _EDITOR = vim
SET HISTSIZE 1000
ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';

?8. ?異常排除

# 啟用調試模式
SQLCL_DEBUG=true sql user/pass@db# 檢查 23ai 特性兼容性
SELECT * FROM v$compatibility WHERE feature_id LIKE '%23AI%';

TIPS?:

undefined.Oracle 23ai 的 AI Vector Search 需要單獨啟用

undefined.使用 SET COMPATIBILITY 確保語法兼容性

undefined.通過 ALTER SYSTEM SET enable_vector_engine=TRUE 啟用向量引擎(需要 DBA 權限)

9. 常用 SQLcl 命令

命令

說明

INFO

顯示表結構

DDL

生成對象 DDL

SET SQLFORMAT JSON

JSON 格式輸出

HISTORY

查看命令歷史

LB STATUS

Liquibase 狀態

VECTOR

向量搜索

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/84220.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/84220.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/84220.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何評價華為最新長焦專利技術?能否顛覆手機長焦攝影的目前限制?

擊上方關注 “終端研發部” 設為“星標”,和你一起掌握更多數據庫知識 目前透露的消息來看是3.7倍和10倍!!! 據悉,華為即將發布的Pura 80系列手機將率先采用這一革命性的專利技術。 華為的伸縮專利讓鏡頭模組學會了&qu…

基于SpringBoot實現的大創管理系統設計與實現【源碼+文檔】

基于SpringBootVue實現的大創管理系統采用前后端分離架構方式,系統設計了管理員、學生、指導老師、院系管理員兩種角色,系統實現了用戶登錄與注冊、個人中心、學生管理、指導老師管理、院系管理員管理、優秀項目管理、項目類型管理、項目信息管理、項目申…

4-C#的不同窗口傳值

C#的不同窗口傳值 1.通過構造函數傳值 this.Hide(); Form1 form01 new Form1(textBox2.Text); //Application.Run(form01); form01.Show();public Form1(string aaa) {InitializeComponent();label12.Text aaa; }2.全局類傳值 namespace WindowsFormsApp1 {public class G…

CentOS 7 如何pip3安裝pyaudio?

CentOS 7 如何pip3安裝pyaudio&#xff1f; # 先將yum軟件源改為阿里云鏡像源 http://mirrors.aliyun.com/centos-vault/7.9.2009/ bash <(curl -sSL https://linuxmirrors.cn/main.sh) # 基于一鍵換源腳本&#xff0c;全部回車即可# pip3安裝模塊是從源碼構建&#xff08;…

低代碼采購系統搭建:鯨采云+能源行業訂單管理自動化案例

在能源行業數字化轉型浪潮下&#xff0c;某大型能源集團通過鯨采云低代碼平臺&#xff0c;僅用3周時間就完成了采購訂單管理系統的定制化搭建。本文將揭秘這一成功案例的實施路徑與關鍵成效。 項目背景與挑戰 該企業面臨&#xff1a; 供應商分散&#xff1a;200供應商使用不同…

基于機器學習的智能故障預測系統:構建與優化

前言 在現代工業生產中&#xff0c;設備故障不僅會導致生產中斷&#xff0c;還會帶來巨大的經濟損失。傳統的故障檢測方法依賴于人工巡檢和定期維護&#xff0c;這種方式效率低下且難以提前預測潛在故障。隨著工業物聯網&#xff08;IIoT&#xff09;和機器學習技術的發展&…

Android啟動時長優化(kernel部分)

硬件平臺&#xff1a;QCS6115 軟件平臺&#xff1a;Android13 Vendor Android14 Qssi 需求&#xff1a;設備從logo到進入Home頁面持續時間過長&#xff0c;接近60s&#xff0c;遂需要優化。首先嘗試內核部分的配置優化及有關裁剪&#xff0c;具體改動如下&#xff1a; diff …

若依添加添加監聽容器配置(刪除鍵,鍵過期)

1、配置Redis的鍵觸發事件 # 基礎配置 bind 0.0.0.0 # 允許所有IP連接 protected-mode no # 關閉保護模式&#xff08;生產環境建議結合密碼使用&#xff09; port 6379 # 默認端口 daemonize no …

vb監測Excel兩個單元格變化,達到閾值響鈴

需求 在Excel中實現監控兩個單元格之間的變化范圍&#xff0c;當達到某個設定的值的范圍內時&#xff0c;實現自動響鈴提示。 實現&#xff1a; 首先設置Excel&#xff0c;開啟宏、打開開發者工具&#xff0c;點擊visual Basic按鈕&#xff0c;然后在左側雙擊需要監測的shee…

用 Melos 解決 Flutter Monorepo 的依賴沖突:一個真實案例

在 Flutter 項目開發中&#xff0c;尤其是采用 Monorepo 架構管理多個相互關聯的包時&#xff0c;依賴沖突是一個常見且令人頭疼的問題。不同的包可能依賴同一個庫的不同版本&#xff0c;導致項目無法編譯或運行時出現難以調試的錯誤。 本文將基于一個 真實的 Flutter Monorep…

Spring AI 項目實戰(五):Spring Boot + AI + DeepSeek + Redis 實現聊天應用上下文記憶功能(附完整源碼)

系列文章 序號文章名稱1Spring AI 項目實戰(一):Spring AI 核心模塊入門2Spring AI 項目實戰(二):Spring Boot + AI + DeepSeek 深度實戰(附完整源碼)3Spring AI 項目實戰(三):Spring Boot + AI + DeepSeek 打造智能客服系統(附完整源碼)4Spring AI 項目實戰(四…

Vue 3 Teleport 實戰:優雅實現模態框、通知和全局組件

Vue 3 Teleport&#xff1a;突破 DOM 層級限制的組件渲染利器 在 Vue 應用開發中&#xff0c;組件通常與其模板的 DOM 結構緊密耦合。但當處理模態框&#xff08;Modal&#xff09;、通知&#xff08;Toast&#xff09;或全局 Loading 指示器時&#xff0c;這種耦合會成為障礙…

SVM超詳細原理總結

哈嘍&#xff0c;我是我不是小upper~ 今天想跟大家聊聊支持向量機&#xff08;SVM&#xff09;。很多初學者對這個算法模型特別感興趣&#xff0c;它也是初學者在學習過程中非常喜愛的一種模型&#xff0c;更是機器學習領域中極為重要的算法之一&#xff01; 今天想跟大家深入…

【Oracle】觸發器

個人主頁&#xff1a;Guiat 歸屬專欄&#xff1a;Oracle 文章目錄 1. 觸發器基礎概述1.1 觸發器的概念與特點1.2 觸發器的分類1.3 觸發器的執行順序 2. DML觸發器2.1 基礎DML觸發器2.1.1 INSERT觸發器2.1.2 UPDATE觸發器2.1.3 DELETE觸發器 2.2 高級DML觸發器2.2.1 復合觸發器2…

MTK-Android12-13 Camera2 設置默認視頻畫質功能實現

MTK-Android12-13 Camera2 設置默認視頻畫質功能實現 場景&#xff1a;部分客戶使用自己的mipi相機安裝到我們主板上&#xff0c;最大分辨率為1280720&#xff0c;但是視頻畫質默認的是640480。實際場景中&#xff0c;在默認視頻分辨率情況下拍出來的視頻比較模糊、預覽也不清晰…

QtDBus模塊功能及架構解析

Qt 6.0 中的 QtDBus 模塊是一個用于進程間通信&#xff08;IPC&#xff09;的核心模塊&#xff0c;它基于 D-Bus 協議實現。D-Bus 是一種在 Linux 和其他類 Unix 系統上廣泛使用的消息總線系統&#xff0c;允許應用程序和服務相互通信。 一、QtDBus模塊主要功能&#xff1a; 1…

Spring AI 項目實戰(六):Spring Boot + AI + DeepSeek 打造智能成語接龍游戲(附完整源碼)

系列文章 序號文章名稱1Spring AI 項目實戰(一):Spring AI 核心模塊入門2Spring AI 項目實戰(二):Spring Boot + AI + DeepSeek 深度實戰(附完整源碼)3Spring AI 項目實戰(三):Spring Boot + AI + DeepSeek 打造智能客服系統(附完整源碼)4Spring AI 項目實戰(四…

【HarmonyOS 5】教育開發實踐詳解以及詳細代碼案例

以下是基于 ?HarmonyOS 5? 的教育應用開發實踐詳解及核心代碼案例&#xff0c;結合分布式能力與教育場景需求設計&#xff1a; 一、教育應用核心開發技術 ?ArkTS聲明式UI? 使用 State 管理學習進度狀態&#xff0c;LocalStorageProp 實現跨頁面數據同步&#xff08;如課程…

【鴻蒙在 ETS (Extendable TypeScript) 中創建多級目錄或文件,可以使用鴻蒙的文件系統 API】

鴻蒙在 ETS (Extendable TypeScript) 中創建多級目錄或文件&#xff0c;可以使用鴻蒙的文件系統 API。 // 導入需要的模塊 import fs from ohos.file.fs;const TAG"Index" Entry Component struct Index {State message: string Hello World;build() {Row() {Colum…

11. vue pinia 和react redux、jotai對比

對比 Vue 的 Pinia&#xff0c;和 React 的 Redux、Jotai&#xff0c;分中英文簡要介紹、特性、底層原理、使用場景。 簡單介紹 1.1 Pinia&#xff08;Vue&#xff09; ? 英文&#xff1a;Pinia is the official state management library for Vue 3, designed to be simple…