需要迁移一个第三方的数据库到本地,不清楚原数据库名称

2023-11-17 12:49:52 +08:00
 lon91ong

如题,只有 dump 出的 SQL 文件,部分内容截取如下:

--
-- PostgreSQL database dump
--

SET client_encoding = 'SQL_ASCII';
SET standard_conforming_strings = off;
SET check_function_bodies = false;
SET client_min_messages = warning;
SET escape_string_warning = off;

--
-- Name: plpgsql; Type: PROCEDURAL LANGUAGE; Schema: -; Owner: postgres
--

CREATE PROCEDURAL LANGUAGE plpgsql;


ALTER PROCEDURAL LANGUAGE plpgsql OWNER TO postgres;

SET search_path = public, pg_catalog;

--
-- Name: res_set; Type: TYPE; Schema: public; Owner: postgres
--

CREATE TYPE res_set AS (
	pidnum integer,
	nret smallint
);


ALTER TYPE public.res_set OWNER TO postgres;

--
-- Name: account_login(character varying, character varying, character varying); Type: FUNCTION; Schema: public; Owner: spiritking
--

CREATE FUNCTION account_login(character varying, character varying, character varying) RETURNS res_set
    AS $_$declare
ppAccountID ALIAS FOR $1;
pPassword ALIAS FOR $2;
pClientIP ALIAS FOR $3;
pAccountID varchar(20);
pcount int;
pPwd char(32) default null;
pBAuthority int2 default 0;
pGMIP varchar(15) default null;

res res_set;

BEGIN
pAccountID = lower(ppAccountID);
res.nRet=-1;
...

请教如何确定原数据库的名称呢?

纯外行请教 查到了挺多关于 PostgreSQL 数据库迁移的教程,但是就没有一个提及数据库名称的 或者 PostgreSQL 对数据库命名不敏感?可以随便改名?

1098 次点击
所在节点    PostgreSQL
5 条回复
babyrjw
2023-11-17 13:03:14 +08:00
用啥名不影响 db 运行,在应用程序里改一下连接字符串就好了
lon91ong
2023-11-17 13:05:37 +08:00
@babyrjw 应用程序不是我想改就能改的,我需要尽可能的还原原来的运行环境
yjhatfdu2
2023-11-17 13:24:47 +08:00
应用程序连接,连不上后看数据库日志里面的报错,应该可以看到尝试连接的数据库名,然后改成这个就行了
orangie
2023-11-17 14:03:17 +08:00
postgres 默认连接不加密,尝试抓包看一看?
zydxn
2023-11-17 14:07:43 +08:00
文件哪来的,能不能直接问下数据库名?正常 pg_dump 的时候一般也会 -d 指定库名。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/992762

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX