在 Ubuntu 上使用 Oracle SQL Developer 的完整指南
一 准备环境
- 安装 JDK 8 或 11(SQL Developer 对 JDK 17+ 支持有限,建议优先使用 JDK 8/11)。可安装 OpenJDK 或 Oracle JDK:
- 安装 OpenJDK 8:sudo apt update && sudo apt install openjdk-8-jdk
- 验证:java -version、javac -version
- 创建 JAVA_HOME(示例为 OpenJDK 8):
- echo ‘export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64’ >> ~/.bashrc
- echo ‘export PATH=$JAVA_HOME/bin:$PATH’ >> ~/.bashrc
- source ~/.bashrc
- 说明:SQL Developer 是 Java 应用,必须先有可用的 JDK 才能启动。
二 安装方式
- 方式 A 直接解压运行(推荐)
- 从 Oracle 官网下载 Linux x64 RPM 包(下载页选择 Linux RPM;若页面提供 “带 JDK” 的包,可直接使用,否则需自备 JDK)。
- 安装解压工具并解压到本地目录(示例:/opt/sqldeveloper):
- sudo apt install rpm2cpio unzip
- mkdir -p /opt/sqldeveloper
- cd /opt/sqldeveloper
- rpm2cpio ~/Downloads/sqldeveloper-*.noarch.rpm | cpio -idmv
- 首次运行并指定 JDK(仅首次):
- /opt/sqldeveloper/sqldeveloper.sh
- 在弹窗中输入 JDK 路径(如:/usr/lib/jvm/java-8-openjdk-amd64)
- 后续可直接运行:/opt/sqldeveloper/sqldeveloper.sh
- 方式 B 转换为 DEB 包安装(可选)
- 安装转换工具并转换安装:
- sudo apt install alien
- cd ~/Downloads
- sudo alien -i sqldeveloper-*.noarch.rpm
- 安装完成后可直接运行:sqldeveloper
- 如需指定 JDK,可编辑启动脚本或配置文件(见下一节)。
三 首次启动与 JDK 配置
- 首次运行若未预设 JDK,会弹出输入框,填写 JDK 安装根目录(示例:/usr/lib/jvm/java-8-openjdk-amd64,不要包含 /bin)。
- 永久指定 JDK(避免每次输入):
- 编辑启动脚本首行(或 /opt/sqldeveloper/sqldeveloper/bin/sqldeveloper 的 shebang 之后)加入:
- export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
- 或在用户配置中设置:
- mkdir -p ~/.sqldeveloper/24.2.0 # 版本号可能不同
- echo ‘SetJavaHome /usr/lib/jvm/java-8-openjdk-amd64’ > ~/.sqldeveloper/24.2.0/product.conf
- 验证:再次启动后应直接进入主界面。
四 创建桌面快捷方式与命令行启动
- 命令行别名(任选其一):
- echo “alias sqld=‘/opt/sqldeveloper/sqldeveloper.sh’” >> ~/.bashrc && source ~/.bashrc
- 创建桌面文件(/usr/share/applications/sqldeveloper.desktop):
- sudo tee /usr/share/applications/sqldeveloper.desktop >/dev/null <<‘EOF’
[Desktop Entry]
Name=Oracle SQL Developer
Comment=Oracle SQL Developer
Exec=/opt/sqldeveloper/sqldeveloper.sh
Icon=/opt/sqldeveloper/sqldeveloper/doc/icon.png
Terminal=false
Type=Application
Categories=Development;
StartupNotify=true
EOF
- 之后可在应用菜单搜索并固定到启动器。
五 连接数据库与常见问题
- 新建连接(示例):
- 连接类型:基本
- 主机名:数据库服务器 IP 或主机名
- 端口:1521
- SID 或 Service Name:按实际填写(如 ORCL 或 pdb 的服务名)
- 用户名/口令:Oracle 账户
- 多主机故障转移示例(高级):
- jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=OFF)(FAILOVER=ON)(ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=host2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=dbname)(FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC))))
- 常见问题
- 中文乱码:在 $JAVA_HOME/jre/lib/fonts 下创建 fallback 目录,拷贝中文字体(如 msyh.ttf),执行 mkfontdir、mkfontscale 后重启 SQL Developer。
- 界面语言:编辑 /opt/sqldeveloper/ide/bin/sqldeveloper.conf,添加
- AddVMOption -Duser.language=en
- AddVMOption -Duser.country=US
保存后重启以切换为英文界面。