当前位置: 首页 > news >正文

网上网站代码可以下载吗转移网站如何转数据库

网上网站代码可以下载吗,转移网站如何转数据库,网络运营者不得违反法律,做舞台灯光的在哪些网站接订单呢目录 ■前言 ■遇到的问题 ■为什么尝试 Java代码实现 ■Java代码可以成功 POM PostgreSQ驱动 Java 需要的参数信息 ■PostgreSQL的数据库中,默认的Schema (public) ■前言 ・使用PostgreSQL数据库,远程连接时因为防火…

目录

■前言

■遇到的问题

■为什么尝试 Java代码实现

■Java代码可以成功

POM

PostgreSQ驱动

Java

需要的参数信息

■PostgreSQL的数据库中,默认的Schema (public)


==========

■前言

・使用PostgreSQL数据库,远程连接时因为防火墙问题无法直接访问

・通过PostgreSQL的pgAdmin工具,连接时使用隧道(Tunnel トンネル),即可正常访问

・隧道:找一台通过了防火墙的服务器,作为隧道,隧道配置中,填写这台服务器的账号密码 (相当于代理服务器)

===

■遇到的问题

・但是我们在连接时,如果使用A5M2,版本过低(据说要2.20.X才行),使用2.19.X之下版本,都会报下面的错误

・no pg_hba.conf entry for host "10.92.95.19", user "postgres", database "XXXXXXXX", no encryption

(上面的IP是作为隧道的服务器的IP)

===A5下载

m.matsubara A5:SQL Mk-2 - SQL Development tool/ER Diagram tool

===上面地址来源:GitHub

https://github.com/m-matsubara

===

■为什么尝试 Java代码实现

・pgAdmin是 安装 PostgreSQL后再带的工具,安装 PostgreSQL 需要申请才能安装。(我们可以通过java代码直接实现访问)

■Java代码可以成功

POM

===

<dependencies><dependency><groupId>org.postgresql</groupId><artifactId>postgresql</artifactId><version>42.7.7</version></dependency><dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><version>0.1.55</version></dependency>
</dependencies>

PostgreSQ驱动

https://github.com/pgjdbc/pgjdbc/tags

===

Java

import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;public class PostgreSQLTunnelConnection {// 配置参数 - 请根据实际情况修改private static final String SSH_USER = "your_ssh_username";private static final String SSH_PASSWORD = "your_ssh_password";private static final String SSH_HOST = "ssh.server.com";private static final int SSH_PORT = 22;private static final String DB_HOST = "localhost"; // 通过SSH隧道后数据库主机private static final int DB_PORT = 5432;private static final String DB_NAME = "your_database";private static final String DB_USER = "your_db_username";private static final String DB_PASSWORD = "your_db_password";private static Session session;private static Connection connection;private static int localPort = 5433; // 本地转发端口public static void main(String[] args) {try {// 加载PostgreSQL JDBC驱动Class.forName("org.postgresql.Driver");// 建立SSH隧道System.out.println("正在建立SSH隧道...");createSSHTunnel();// 连接数据库System.out.println("正在连接数据库...");connectToDatabase();// 执行查询System.out.println("执行查询...");executeQuery();// 关闭连接System.out.println("关闭连接...");closeConnections();} catch (Exception e) {System.err.println("发生错误: " + e.getMessage());e.printStackTrace();}}private static void createSSHTunnel() throws Exception {JSch jsch = new JSch();session = jsch.getSession(SSH_USER, SSH_HOST, SSH_PORT);session.setPassword(SSH_PASSWORD);Properties config = new Properties();config.put("StrictHostKeyChecking", "no");session.setConfig(config);session.connect();System.out.println("SSH连接已建立");// 设置端口转发session.setPortForwardingL(localPort, DB_HOST, DB_PORT);System.out.println("SSH隧道已建立,本地端口: " + localPort);}private static void connectToDatabase() throws Exception {String dbUrl = "jdbc:postgresql://localhost:" + localPort + "/" + DB_NAME;connection = DriverManager.getConnection(dbUrl, DB_USER, DB_PASSWORD);System.out.println("数据库连接成功!");}private static void executeQuery() throws Exception {// 直接查询information_schema.tables表,按schema和表名分组String query = "SELECT table_schema, table_name " +"FROM information_schema.tables " +"WHERE table_schema NOT LIKE 'pg_%' " +"AND table_schema != 'information_schema' " +"ORDER BY table_schema, table_name";Statement stmt = connection.createStatement();ResultSet rs = stmt.executeQuery(query);System.out.println("数据库中的所有Schema及其包含的表:");String currentSchema = null;while (rs.next()) {String schemaName = rs.getString("table_schema");String tableName = rs.getString("table_name");// 当遇到新的Schema时,输出Schema名称if (!schemaName.equals(currentSchema)) {if (currentSchema != null) {System.out.println(); // 在Schema之间添加空行}System.out.println("Schema: " + schemaName);currentSchema = schemaName;}// 输出表名System.out.println("  - " + tableName);}rs.close();stmt.close();}rs.close();stmt.close();}private static void closeConnections() {try {if (connection != null && !connection.isClosed()) {connection.close();System.out.println("数据库连接已关闭");}} catch (Exception e) {System.err.println("关闭数据库连接时出错: " + e.getMessage());}if (session != null && session.isConnected()) {session.disconnect();System.out.println("SSH连接已关闭");}}
}

需要的参数信息

・SSH_USER: SSH用户名
・SSH_PASSWORD: SSH密码
・SSH_HOST: SSH服务器地址
・DB_NAME: 数据库名称
・DB_USER: 数据库用户名
・DB_PASSWORD: 数据库密码

■PostgreSQL的数据库中,默认的Schema (public)

默认的Schema是public

====

http://www.dtcms.com/a/479498.html

相关文章:

  • 企业网站示例网站建设方案撰写
  • 数据结构:哈希基础、6种哈希函数构造方法、4种解决哈希冲突的方法和哈希扩展(一致性哈希+虚拟节点+布隆过滤器)
  • 网站做哪种推广好建设银行租房网站湖北
  • 网站建设公司基本流程无锡专业做网站
  • 工商注册网站官网网站和app可以做充值余额功能
  • 东莞网站开发后缀微营销论文
  • 【AI论文】Paper2Video:从科学论文自动生成视频
  • Pod的进阶
  • 汽车4s店网站建设方案自己设计建房子的软件
  • 玉器哪家网站做的好中小企业信息网官网
  • Node.js zlib模块所有 API 详解 + 常用 API + 使用场景
  • wordpress怎么加入站长统计聊城网站建设策划建设公司
  • 优化网站的软件wordpress文章全部展示
  • 大型网站建设行情吉林长春建设工程信息网站
  • 在线网站做品牌网站怎么样
  • 从零开始认识大模型:它的过去、现在与未来以及核心原理
  • 中国风配色网站南京网站开发价格
  • 建设厅官方网站职称动漫制作专业什么电脑最适合
  • [笔记] 驱动开发:usbview编译过程
  • 泉州正规制作网站公司my8777网域名查询
  • hive join优化和数据倾斜处理
  • 计算机知识(二)
  • 网页设计与网站建设完全学习手册pdf网站建设开发价格
  • 哪些网站可以找到兼职做报表的wordpress 架站 电子书
  • [Qlib] `Strategy` | TopkDropout
  • 镇江网站建设制作公司wordpress主题二次开发
  • 小说网站建设方案网站开发域名注册功能
  • 函数封装的平衡艺术:以C++为例探讨适度封装
  • 泾川网站城镇建设规化图网站图标在哪里做修改
  • 住房和城乡建设部网站招聘冷链物流