Мне нужно получить доступ к небольшой базе данных примерно четырехлетней давности. У меня есть исходный установщик и весь исходный каталог, включая data
папка. К сожалению, установщик для 9.3 и 12.0 категорически отказывается создавать службу для Windows. После этого одного проекта я полностью отказался от PostgreSQL, хотя мне действительно нужен доступ к базе данных (в идеале с HeidiSQL).
Я пытался:
Я иногда использую Менеджер по обслуживанию без сосания для управления службами и попытались создать службу вручную.
Я понятия не имею, как запустить PostgreSQL даже при полностью чистой установке. Я просмотрел как минимум дюжину потоков (в основном Stack), и ничего не происходит.
C:\MEDIA\INTERNET\WAMP\PostgreSQL 9.3 x64
.Мне просто нужно иметь возможность просматривать старую / небольшую базу данных PostgreSQL в HeidiSQL или, если есть умная программа, которая будет просматривать необработанные файлы базы данных и экспортировать все базы данных, не требуя запуска PostgreSQL? У меня нет подтверждения того, что он работал в любом контексте.
Как вручную создать сервис для PostgreSQL или как мне экспортировать все базы данных из PostgreSQL без запуска PostgreSQL в любом контексте?
Хммм ... Я использую Postgres с 95 года и запускаю Postgres в Windows с тех пор, о, ранние шалости, конечно, до версии 8.2, и сейчас я все еще использую 9.3 в Windows 7 в том самом поле, в котором я это набираю на.
Одна вещь, которую вы не указываете, - это то, на какой версии Windows вы пытаетесь запустить, хотя мы видим, что это 64-битный процессор.
Прошло немного времени с тех пор, как я выполнил эту установку, но я считаю, что установщик для Windows предоставляется не командой PostgreSQL, а EnterpriseDb - это то, что вы запускали?
Может у вас гниль? sha1sum в выпуске 9.3.1.1:
20bd1b72b5707c74a013e1bcb9a36502c8f0544e postgresql-9.3.1-1-windows-x64.exe
Я успешно использовал инструменты Cygwin для добавления службы в Windows. Вот краткое описание того, что он может делать (это более старая версия):
$ cygrunsrv.exe --help
Usage: cygrunsrv [OPTION]...
Main options: Exactly one is required.
-I, --install <svc_name> Installes a new service named <svc_name>.
-R, --remove <svc_name> Removes a service named <svc_name>.
-S, --start <svc_name> Starts a service named <svc_name>.
-E, --stop <svc_name> Stops a service named <svc_name>.
-Q, --query <svc_name> Queries a service named <svc_name>.
-L, --list [server] Lists services that have been installed
with cygrunsrv.
<svc_name> can be a local service or "server/svc_name" or "server\svc_name".
Required install options:
-p, --path <app_path> Application path which is run as a service.
Miscellaneous install options:
-P, --crs-path <path> Path to cygrunsrv. This is useful for testing or
when installing a service on a remote machine.
-a, --args <args> Optional string with command line options which
is given to the service application on startup.
-c, --chdir <directory> Optional directory which will be used as working
directory for the application.
-e, --env <VAR=VALUE> Optional environment strings which are added
to the environment when service is started.
You can add up to 255 environment strings using
the `--env' option.
Note: /bin is always added to $PATH to allow all
started applications to find cygwin DLLs.
-d, --disp <display name> Optional string which contains the display name
of the service. Defaults to service name.
-f, --desc <description> Optional string which contains the service
description.
-t, --type [auto|manual] Optional start type of service. Defaults to `auto'.
-u, --user <user name> Optional user name to start service as.
Defaults to SYSTEM account.
-w, --passwd <password> Optional password for user. Only needed
if a user is given. If a user has an empty
password, enter `-w '. If a user is given but
no password, cygrunsrv will ask for a password
interactively.
-s, --termsig <signal> Optional signal to send to service application
when service is stopped. <signal> can be a number
or a signal name such as HUP, INT, QUIT, etc.
Default is TERM.
-z, --shutsig <signal> Optional signal to send to service application
when shutdown has been initiated. Default is the
same signal as defined as termination signal.
-y, --dep <svc_name2> Optional name of service that must be started
before this new service. The --dep option may
be given up to 16 times, listing another dependent
service each time.
-0, --stdin <file> Optional input file used for stdin redirection.
Default is /dev/null.
-1, --stdout <file> Optional output file used for stdout redirection.
Default is /var/log/<svc_name>.log.
-2, --stderr <file> Optional output file used for stderr redirection.
Default is /var/log/<svc_name>.log.
-x, --pidfile <file> Optional path for .pid file written by application
after fork().
Default is that application must not fork().
-n, --neverexits Service should never exit by itself.
-O, --preshutdown Stop service application during system preshutdown.
-o, --shutdown Stop service application during system shutdown.
(Only one of --preshutdown and --shutdown is
accepted. Preshutdown is preferred, but only
available since Windows Vista/Longhorn. On earlier
OS versions it's silently converted to --shutdown).
-i, --interactive Allow service to interact with the desktop
(No effect since Windows Vista/Longhorn).
-j, --nohide Don't hide console window when service interacts
with desktop.
Informative output:
-V, --verbose When used with --query or --list, causes extra
-h, --help print this help, then exit.
-v, --version print cygrunsrv program version number, then exit.
Я использовал это для успешного добавления служб в Windows (до Windows 7 включительно, но не за ее пределами), а проект Cygwin активен и, вероятно, хорошо работает в самой младшей версии.
Кроме того, я запускал Postgres во многих системах, где Postgres официально НЕ был установлен; он имеет собственные файлы конфигурации и самодостаточен. Если вам комфортно пользоваться инструментами командной строки, вы, вероятно, можете довольно легко запустить Postgres «вручную» - просто следуйте инструкциям, как если бы он работал в системе Linux / Unix! (Если вы попробуете это сделать, я НАСТОЯТЕЛЬНО рекомендую использовать Cygwin в качестве интерфейса командной строки.) Тем не менее, можно с уверенностью сказать, что PGAdmin требует этих записей реестра Windows, поэтому ваши графические инструменты, скорее всего, не будут работать таким образом, но кто знает, могут! Это просто порт для подключения и прохождение некоторых разрешений / аутентификации.
Кроме того, все эти годы я писал себе несколько заметок по установке, чтобы помочь тем, кто следит за ним. Вот что я писал о Postgres для Windows, последний раз обновлявшийся в 2009 году, поэтому ссылки могут быть недействительными:
$ cat PostgresOnWindows/README.TXT
NOTE! Before you run the installation, you must extract the entire
ZIP file to a temporary directory. Just double-clicking on the
MSI files inside the ZIP will NOT work.
Before you begin, please read the installation instructions at
http://pginstaller.projects.postgresql.org
Also see the FAQ available at
http://www.postgresql.org/docs/faqs.FAQ_windows.html
В качестве альтернативы найдите кого-нибудь вроде меня, у которого он установлен и запущен для извлечения ваших данных, так как это не похоже на то, что вы заботитесь об использовании Postgres.