当前版本为19.1,这是安装数据库19.3时自带的:
[oracle@oracle-19c-vagrant ~]$ sql -V
SQLcl: Release 19.1.0.0 Production
[oracle@oracle-19c-vagrant ~]$ which sql
/opt/oracle/product/19c/dbhome_1/bin/sql
从官网 可知最新版本为:24.1 。
文件大小65M:
[oracle@oracle-19c-vagrant ~]$ ls -lh sqlcl-latest.zip
-rwxr-xr-x. 1 oracle oinstall 65M Jun 12 15:25 sqlcl-latest.zip
[oracle@oracle-19c-vagrant ~]$ unzip -l sqlcl-latest.zip
Archive: sqlcl-latest.zip
Length Date Time Name
--------- ---------- ----- ----
0 03-27-2024 09:30 sqlcl/
0 03-27-2024 09:29 sqlcl/bin/
0 03-27-2024 09:31 sqlcl/lib/
0 03-27-2024 09:31 sqlcl/lib/ext/
192 03-27-2024 09:31 sqlcl/NOTICES.txt
210835 03-27-2024 09:29 sqlcl/lib/osdt_cert.jar
216 03-27-2024 09:31 sqlcl/LICENSE.txt
387421 03-27-2024 09:30 sqlcl/lib/jdbcrest.jar
348 03-27-2024 09:31 sqlcl/THIRD-PARTY-LICENSES.txt
307824 03-27-2024 09:29 sqlcl/lib/oraclepki.jar
44 03-27-2024 09:30 sqlcl/24.1.0.087.0929
312754 03-27-2024 09:29 sqlcl/lib/osdt_core.jar
152 03-27-2024 09:30 sqlcl/bin/version.txt
1664684 03-27-2024 09:29 sqlcl/lib/orai18n.jar
3198 03-27-2024 09:30 sqlcl/bin/dependencies.txt
507645 03-27-2024 09:29 sqlcl/lib/orai18n-utility.jar
29816 03-27-2024 09:29 sqlcl/bin/sql
51573 03-27-2024 09:30 sqlcl/lib/sshd-contrib.jar
180288 03-27-2024 09:30 sqlcl/bin/sql.exe
10011 03-27-2024 09:29 sqlcl/lib/pom.xml
90454 03-27-2024 09:29 sqlcl/lib/orai18n-mapping.jar
195968 03-27-2024 09:31 sqlcl/lib/ext/dbtools-cpat.jar
737786 03-27-2024 09:31 sqlcl/lib/ext/cpat.jar
93226 03-27-2024 09:31 sqlcl/lib/ext/dbtools-apex.jar
632267 03-27-2024 09:31 sqlcl/lib/ext/commons-lang3-3.13.0.jar
240285 03-27-2024 09:31 sqlcl/lib/ext/opencsv-5.9.jar
334130 03-27-2024 09:31 sqlcl/lib/ext/snakeyaml-2.0.jar
565904 03-27-2024 09:31 sqlcl/lib/ext/dbtools-liquibase.jar
2758206 03-27-2024 09:31 sqlcl/lib/ext/liquibase-core.jar
84408 03-27-2024 09:31 sqlcl/lib/ext/dbtools-dg.jar
148050 03-27-2024 09:31 sqlcl/lib/ext/dbtools-aq.jar
57826 03-27-2024 09:31 sqlcl/lib/ext/dbtools-blockchain.jar
45249 03-27-2024 09:31 sqlcl/lib/ext/dbtools-modeler-cli-ext.jar
28961 03-27-2024 09:30 sqlcl/lib/sshd-putty.jar
6300296 03-27-2024 09:31 sqlcl/lib/ext/dbtools-modeler-common.jar
43329 03-27-2024 09:30 sqlcl/lib/ext/dbtools-jobs.jar
45041 03-27-2024 09:31 sqlcl/lib/ext/dbtools-copy.jar
859077 03-27-2024 09:30 sqlcl/lib/dbtools-sqlcl.jar
1948954 03-27-2024 09:29 sqlcl/lib/xmlparserv2_sans_jaxp_services.jar
173630 03-27-2024 09:30 sqlcl/lib/antlr-runtime.jar
326305 03-27-2024 09:30 sqlcl/lib/antlr4-runtime.jar
48710 03-27-2024 09:30 sqlcl/lib/jakarta.json-api.jar
123995 03-27-2024 09:30 sqlcl/lib/parsson.jar
189214 03-27-2024 09:29 sqlcl/lib/dbtools-core.jar
5248167 03-27-2024 09:29 sqlcl/lib/ojdbc11.jar
265864 03-27-2024 09:29 sqlcl/lib/xdb.jar
109319 03-27-2024 09:30 sqlcl/lib/sqlcl-jline.jar
994664 03-27-2024 09:30 sqlcl/lib/jline.jar
258307 03-27-2024 09:30 sqlcl/lib/jansi.jar
345398 03-27-2024 09:30 sqlcl/lib/dbtools-net.jar
52328 03-27-2024 09:30 sqlcl/lib/dbtools-oci.jar
94290 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-common-httpclient-jersey3.jar
56430 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-common-httpclient.jar
63108 03-27-2024 09:29 sqlcl/lib/slf4j-api.jar
138565 03-27-2024 09:29 sqlcl/lib/jakarta.ws.rs-api.jar
26141 03-27-2024 09:29 sqlcl/lib/jakarta.annotation-api.jar
1204842 03-27-2024 09:29 sqlcl/lib/jersey-common.jar
10760 03-27-2024 09:29 sqlcl/lib/jakarta.inject-api.jar
19465 03-27-2024 09:29 sqlcl/lib/osgi-resource-locator.jar
267454 03-27-2024 09:29 sqlcl/lib/jersey-client.jar
80130 03-27-2024 09:29 sqlcl/lib/jersey-media-json-jackson.jar
84046 03-27-2024 09:29 sqlcl/lib/jersey-entity-filtering.jar
31649 03-27-2024 09:29 sqlcl/lib/jackson-module-jakarta-xmlbind-annotations.jar
62154 03-27-2024 09:29 sqlcl/lib/jakarta.activation.jar
128943 03-27-2024 09:29 sqlcl/lib/jakarta.xml.bind-api.jar
78984 03-27-2024 09:29 sqlcl/lib/jersey-hk2.jar
203950 03-27-2024 09:29 sqlcl/lib/hk2-locator.jar
27129 03-27-2024 09:29 sqlcl/lib/aopalliance-repackaged.jar
201467 03-27-2024 09:29 sqlcl/lib/hk2-api.jar
131796 03-27-2024 09:29 sqlcl/lib/hk2-utils.jar
783517 03-27-2024 09:29 sqlcl/lib/javassist.jar
46515 03-27-2024 09:29 sqlcl/lib/jersey-apache-connector.jar
782072 03-27-2024 09:29 sqlcl/lib/httpclient.jar
328842 03-27-2024 09:29 sqlcl/lib/httpcore.jar
125238 03-27-2024 09:29 sqlcl/lib/jackson-datatype-jsr310.jar
441459 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-common.jar
78455 03-27-2024 09:29 sqlcl/lib/jackson-annotations.jar
1691474 03-27-2024 09:29 sqlcl/lib/jackson-databind.jar
1120300 03-27-2024 09:29 sqlcl/lib/bcpkix-jdk15to18.jar
6532993 03-27-2024 09:29 sqlcl/lib/bcprov-jdk15to18.jar
682154 03-27-2024 09:29 sqlcl/lib/bcutil-jdk15to18.jar
58110 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-circuitbreaker.jar
75861 03-27-2024 09:29 sqlcl/lib/resilience4j-circuitbreaker.jar
897876 03-27-2024 09:29 sqlcl/lib/vavr.jar
3039 03-27-2024 09:29 sqlcl/lib/vavr-match.jar
65754 03-27-2024 09:29 sqlcl/lib/resilience4j-core.jar
106188 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-secrets.jar
1962775 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-identity.jar
5874528 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-database.jar
134013 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-workrequests.jar
308437 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-bastion.jar
787445 03-27-2024 09:29 sqlcl/lib/oci-java-sdk-databasetools.jar
1815021 03-27-2024 09:29 sqlcl/lib/sshd-osgi.jar
63138 03-27-2024 09:29 sqlcl/lib/eddsa.jar
10345 03-27-2024 09:29 sqlcl/lib/slf4j-jdk14.jar
21141 03-27-2024 09:29 sqlcl/lib/jcl-over-slf4j.jar
10048041 03-27-2024 09:30 sqlcl/lib/dbtools-common.jar
3042100 03-27-2024 09:30 sqlcl/lib/guava-with-lf.jar
253919 03-27-2024 09:30 sqlcl/lib/ST4.jar
1340629 03-27-2024 09:30 sqlcl/lib/assertj-core.jar
577585 03-27-2024 09:30 sqlcl/lib/jackson-core.jar
98604 03-27-2024 09:30 sqlcl/lib/jackson-jr-objects.jar
29062 03-27-2024 09:30 sqlcl/lib/jackson-jr-stree.jar
559773 03-27-2024 09:30 sqlcl/lib/orajsoda.jar
84166 03-27-2024 09:30 sqlcl/lib/dbtools-http.jar
861741 03-27-2024 09:30 sqlcl/lib/httpclient5.jar
855013 03-27-2024 09:30 sqlcl/lib/httpcore5.jar
237145 03-27-2024 09:30 sqlcl/lib/httpcore5-h2.jar
511572 03-27-2024 09:30 sqlcl/lib/low-level-api.jar
375634 03-27-2024 09:30 sqlcl/lib/sshd-sftp.jar
117908 03-27-2024 09:30 sqlcl/lib/sshd-scp.jar
501728 03-27-2024 09:30 sqlcl/lib/dbtools-data.jar
248032 03-27-2024 09:30 sqlcl/lib/dbtools-datapump.jar
43329 03-27-2024 09:30 sqlcl/lib/dbtools-jobs.jar
--------- -------
74506293 114 files
可以通过解压以上的包安装,也可以使用yum安装:
[oracle@oracle-19c-vagrant ~]$ yum search sqlcl
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
========================================================= N/S matched: sqlcl ==========================================================
sqlcl.noarch : Oracle SQL Developer Command Line (SQLcl)
Name and summary matches only, use "search all" for everything.
[oracle@oracle-19c-vagrant ~]$ sudo yum install sqlcl
ol7_UEKR6 | 3.0 kB 00:00:00
ol7_addons | 3.0 kB 00:00:00
ol7_developer | 3.0 kB 00:00:00
ol7_developer_EPEL | 3.6 kB 00:00:00
ol7_latest | 3.6 kB 00:00:00
ol7_optional_latest | 3.0 kB 00:00:00
ol7_software_collections | 3.0 kB 00:00:00
yum.oracle.com_repo_OracleLinux_OL7_oracle_software_x86_64 | 2.9 kB 00:00:00
(1/14): ol7_addons/x86_64/primary_db | 281 kB 00:00:00
(2/14): ol7_developer/x86_64/updateinfo | 338 kB 00:00:00
(3/14): ol7_addons/x86_64/updateinfo | 171 kB 00:00:00
(4/14): ol7_developer_EPEL/x86_64/updateinfo | 1.3 MB 00:00:00
(5/14): ol7_developer/x86_64/primary_db | 1.3 MB 00:00:00
(6/14): ol7_UEKR6/x86_64/updateinfo | 1.2 MB 00:00:01
(7/14): ol7_latest/x86_64/updateinfo | 3.6 MB 00:00:00
(8/14): ol7_optional_latest/x86_64/updateinfo | 1.5 MB 00:00:00
(9/14): ol7_software_collections/x86_64/updateinfo | 8.9 kB 00:00:00
(10/14): ol7_optional_latest/x86_64/primary_db | 6.4 MB 00:00:00
(11/14): ol7_software_collections/x86_64/primary_db | 6.2 MB 00:00:00
(12/14): ol7_developer_EPEL/x86_64/primary_db | 18 MB 00:00:03
(13/14): ol7_latest/x86_64/primary_db | 52 MB 00:00:06
(14/14): ol7_UEKR6/x86_64/primary_db | 75 MB 00:00:11
Resolving Dependencies
--> Running transaction check
---> Package sqlcl.noarch 0:24.1.0-1.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=======================================================================================================================================
Package Arch Version Repository Size
=======================================================================================================================================
Installing:
sqlcl noarch 24.1.0-1.el7 yum.oracle.com_repo_OracleLinux_OL7_oracle_software_x86_64 63 M
Transaction Summary
=======================================================================================================================================
Install 1 Package
Total download size: 63 M
Installed size: 70 M
Is this ok [y/d/N]: y
Downloading packages:
sqlcl-24.1.0-1.el7.noarch.rpm | 63 MB 00:00:06
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : sqlcl-24.1.0-1.el7.noarch 1/1
Verifying : sqlcl-24.1.0-1.el7.noarch 1/1
Installed:
sqlcl.noarch 0:24.1.0-1.el7
Complete!
不过新的sqlcl提示需要JDK或以上:
[oracle@oracle-19c-vagrant ~]$ sql -V
Warning: Found incompatible $ORACLE_HOME for database version 19
Thick driver unavailable for use.
Error: SQLcl requires Java 11 and above to run.
Found Java version 8.
Please set JAVA_HOME to appropriate version.
好在之前装了一个open JDK 11,设置JAVA_HOME就可以了:
[oracle@oracle-19c-vagrant ~]$ export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.23.0.9-2.0.1.el7_9.x86_64/
[oracle@oracle-19c-vagrant ~]$ sql -V
Warning: Found incompatible $ORACLE_HOME for database version 19
Thick driver unavailable for use.
SQLcl: Release 24.1.0.0 Production Build: 24.1.0.087.0929
下面这个警告每次都会出现,以后再处理,目前看不影响:
Warning: Found incompatible $ORACLE_HOME for database version 19
Thick driver unavailable for use.
新版本功能更多,特别是在自动完成方面:
SQL> show version
Oracle SQLDeveloper Command-Line (SQLcl) version: 24.1.0.0 build: 24.1.0.087.0929
SQL> help
For help on a topic type help <topic>
List of Help topics available:
/ @ @@ ACCEPT ALIAS APEX APPEND
AQ ARBORI ARCHIVE_LOG ARGUMENT BACKGROUND BLOCKCHAIN_TABLE BREAK
BRIDGE BTITLE CD CERTIFICATE CHANGE CLEAR CLOUDSTORAGE
CODESCAN COLUMN COMPUTE CONNECT CONNMGR COPY CS
CTAS DATAPUMP DBCCRED DDL DEFINE DEL DESCRIBE
DG DISCONNECT EDIT EXECUTE EXIT FILES FIND
FORMAT GET HISTORY HOST IMMUTABLE_TABLE INFORMATION INPUT
JOBS LIQUIBASE LIST LOAD MIGRATEADVISOR MODELER NET
OCI OCIDBMETRICS OERR ORAPKI PASSWORD PAUSE PRINT
PROMPT QUIT REMARK REPEAT RESERVED_WORDS REST RUN
SAVE SCRIPT SECRET SET SHOW SHUTDOWN SODA
SPOOL SSHTUNNEL START STARTUP STORE TIMING TNSPING
TOSUB TTITLE UNDEFINE UNLOAD VARIABLE VAULT WAIT4
WHENEVER WHICH XQUERY
参考
- https://stackoverflow.com/questions/69832026/sqlcl-fails-to-run-scripts-even-with-oracle-jdk-8-installed
- https://docs.oracle.com/en/database/oracle/sql-developer-command-line/23.2/sqcug/working-sqlcl.html