Ошибка could not open boxfile

1. Предисловие

1.1 Обзор

Эта статья представляет несколько общих проблем PostgreSQL и начинается с явления, постепенно исследуя проблему, анализирует причину проблемы и дает решения.

Проблемы, описанные в этой статье, делятся на две категории: одна — проблема, которую PostgreSQL не может запустить, а другая — проблема, с которой некоторые объекты базы данных не могут быть доступны после запуска PostgreSQL.

1.2 Программная среда

Версия PostgreSQL, используемая в этой статье, составляет 9.2.

1.3 Некоторые согласованные сроки

Postgresql Путь установки: указывает путь установки платформы IVMS-8700 PostgreSQL, по умолчанию «D: Program Files Postgresql 9.6″ «» «»

Папка Bin: папка Bin под пути установки PostgreSQL.

Папка данных: папка данных в рамках пути установки PostgreSQL.

2. Вопросы и решения

2.1 PostgreSQL не может начать

Когда PostgreSQL не начался нормально, он снова потерпел неудачу в «Сервисе».

2.1.1 Портовая занятия

Сначала нам нужно определить, занят ли порт услуги. Порт по умолчанию службы PostgreSQL составляет 5432, поэтому мы выполняем следующие команды в командной строке

netstat -ano | find /i «5432»

Если найдено процесс использования порта 5432, это показывает, что занятие порта вызывает запуск услуги:

PID этого процесса — 2364. Вы хотите посмотреть, какой это процесс, вы можете выполнить:

  tasklist | findstr «2364»

Результаты выполнения следующие:

Вы можете положить конец этому процессу на странице Processcess-Process или по следующей команде:

taskkill /f /pid 5432

2.1.2 could not open control file “global/pg_control”:Permission denied

  Если порт не занят, то вы можете его использоватьPostgreSQLНативная команда запускает это.

ВойтиpostgresqlПод пути установки bin Папка, откройте командную строку здесь и выполните следующую команду:

.pg_ctl start -D ..data

Если программа сообщает о следующих ошибках

ERROR: could not open control file global/pg_control: Permission denied

Он показывает, что текущие пользователи операционной системы теряют авторитет папки данных и ее контента.

Ниже приведено решение:

1. Во -первых, введите путь установки PostgreSQL, справа -щелкните папку данных, нажмите на атрибуты -Security -Editor, вы можете увидеть разрешения всех пользователей или групп пользователей.

2. Убедитесь, что система и администратор имеют «полное управление» разрешения. Пользовательская группа пользователей имеет только три типа разрешений: «чтение и выполнение», «Список содержимого папки» и «чтение». Когда база данных предлагает «недостаточные разрешения», следует добавлять «модификацию» и «написание».

    

3. Сохраните и попробуйте снова выступить под папкой бина:

.pg_ctl start -D ..data

Обратите внимание, может ли база данных PostgreSQL начать.

2.1.3 could not locate a valid checkpoint record

Если база данных активирована, ее предложено «запустить процесс сервера» и быть успешным в течение долгого времени. Как показано на рисунке ниже, вам необходимо проверить журнал запуска базы данных. Они расположены в PG_LOG в папке данных Анкет

Откройте журнал запуска базы данных, когда возникает проблема, и проверьте информацию.

Если в журнале есть информация, аналогичная следующим черным телам, это означает, что журнал до -записи (Wal (Wal, также известный как журнал транзакций) в базе данных PostgreSQL поврежден:

LOG:  could not open file «pg_xlog/0000000100000000000000E7» (log file 0, segment 231): No such file or directory

LOG:  invalid primary checkpoint record

LOG:  could not open file «pg_xlog/0000000100000000000000E7» (log file 0, segment 231): No such file or directory

LOG:  invalid secondary checkpoint record

PANIC:  could not locate a valid checkpoint record

Решение заключается в следующем:

Введите папку Bin, откройте командную строку здесь и выполните следующую команду:

.pg_resetxlog.exe -f ..data

После того, как журнал будет сброшен, попробуйте запустить базу данных.

2.1.4 Описание идентификатора события 0 из источника PostgreSQL не может быть найдено.

Если приведенный выше метод не решает проблему, то нам нужно ввести диспетчер событий, чтобы увидеть, есть ли какой -либо журнал ошибок:

В случае применения журнала зрителей визиторов, посмотрите, есть ли следующие ошибки:

Невозможно найти источник PostgreSQL мероприятие ID 0 описание. Не установлен на локальном компьютере, который вызвал этот инцидент,Или установка повреждена. Вы можете установить или восстановить компоненты на локальном компьютере.

Если такая информация появляется, это означает, что программное обеспечение PostgreSQL было повреждено и должно быть переустановлено. Тем не менее, файл данных не обязательно поврежден, поэтому, если в последний раз, когда он резервен, база данных сгенерировала очень важные данные (например, информация о счетах), вы должны скопировать папку данных в другой каталог, а затем переустановить платформу и и Восстановите данные папки данных.

2.1.5 Could not read from file «pg_clog/000E» at offset 172032

Есть также необычная ситуация. Если в журнале появляется следующая информация:

ERROR: could not access status of transaction 710708

DETAIL:  Could not read from file «pg_clog/000E» at offset 172032: No error.

Это находится вdataПод папкойpg_clogИмя 000E Файл журнала был потерян.

Решение заключается в следующем:

существуетlinux В операционной системе выполните следующие команды:

dd if=/dev/zero of=/root/000E bs=256k count=1

Или установите DD в Windows, а затем выполните:

dd if=/dev/zero of=D:00E bs=256k count=1

Затем скопируйте созданный файл 000e вdataПод папкойpg_clog середина.

2.2 После запуска базы данных некоторые базы данных или таблицы нельзя получить

В этом случае вам нужно войти dataПод папкойpg_logПапка, постоянно проверяйте беговые журналы.

2.2.1 permission denied for relation tb_door

Если в журнале есть аналогичная информация, это показывает, что у текущего пользователя доступа нет таблицыtb_doorНекоторые разрешения:

ERROR:  permission denied for relation tb_door

Если вы хотите текущего пользователя (чтобыmy_userНапример) наличие конкретных разрешений на доступ (на основеВыберите, вставьте, обновите, удаляйте в качестве примера), Вы можете решить это так:

  1. Первый проходpostgresПользователь или владетьСоответствующие разрешения TB_DOOR, то есть журналы пользователя в базе данных, которая предоставила разрешения;
  2. Выполнить следующие команды, чтобы предоставить разрешения пользователям:grant SELECT,INSERT,UPDATE,DELETE on tb_door to my_user

2.2.2 invalid page header in block 120 of relation base/272816/309624

Если в журнале появляется следующая информация:

ERROR: invalid page header in block 120 of relation base/272816/309624

Это означает, что файл таблицы данных поврежден. Обычно это вызвано ненормальным сбоем энергии или недоразумением.Здесь «272816» является идентификатором объекта (OID) базы данных проблемы.

Если количество поврежденных таблиц и количество поврежденных страниц невелико, мы можем восстановить целое за счет жертвоприношения части данных; если количество поврежденных таблиц слишком велика или потеря данных очень важна, мы Нужно восстановить данные из резервной копии.

Когда количество поврежденных таблиц и количество поврежденных страниц невелико, решение следующим образом:

  1. Определите базу данных проблемы. Подключите любую базу данных и выполните оператор SQL ниже:

select datname from pg_database where oid = 272816;

Результаты запроса следующие:

testdb

Это означает, что название базы данных проблемы является TestDB

2. Найдите поврежденный объект базы данных. База данных задачи подключения выполните следующее оператор SQL:

select relname,relkind from pg_class where relfilenode = 309624

Если relkind = r в результатах запроса, таблица повреждена.

Например:

tb_door, r

Relname = tb_door Это означает, что поврежденная таблица — tb_door.

Если relkind = i в результатах запроса, это индекс, который поврежден.

Например:

dept_number_index, i

или же:

tb_dept_pkey, i

Следует отметить, что ущерб может быть обычным индексами или основным или уникальным ключом. Если имя индекса является «_pkey», оно, вероятно, будет принадлежать первичному ключу, и имя содержит «_key», оно может принадлежать к уникальному ключу.

Также необходимо обратить на это внимание. Предварительным условием для исправления таблицы/индекса является то, что поврежденная таблица — это таблица/индекс, созданная приложением, а не системная таблица PostgreSQL и индекс, созданный на нем. Если системная таблица/индекс, созданный на нем, повреждены, база данных необходимо восстановить из резервной копии. Чтобы определить, является ли таблица системной таблицей, самый простой способ: если имя таблицы «pg_», это означает, что это системная таблица.

чаевые

Значения pgclass.relkind являются следующими:

R: представляет обычную таблицу (обычная таблица);

I: указывает на индекс (индекс);

S: указывает последовательность (последовательность);

V: представляет представление (View);

M: укажите материализованный вид (материализованный вид);

C: представляет композитный тип (композитный тип);

T: представляет Toast Table (Toast Table);

F: представляет иностранную таблицу (внешняя таблица)

3. Исправьте поврежденный объект базы данных. Поврежденная база данных происходит для выполнения команды ремонта.

Если таблица повреждена, возьмите TB_DOOR в качестве примера, затем выполните следующие команды, чтобы завершить ремонт:

set zero_damaged_pages = on;

vacuum full tb_door;

reindex table tb_door;

Если поврежденный является обычным индексом, возьмите dept_number_index в качестве примера, затем выполните его по порядку:

set zero_damaged_pages = on;

reindex index dept_number_index;

Если урон является основным ключом или уникальным ключом, сначала вам нужно найти таблицу, которую он находится. TB_DEPT_PKEY В качестве примера:

Select tablename,indexname from pg_indexes where indexname = ‘tb_dept_pkey’;

результат поиска:

tb_dept, tb_dept_pkey

Затем получите определение индекса:

select pg_get_constraintdef((select oid from pg_constraint where conname = ‘ tb_dept_pkey ‘));

результат поиска:

       PRIMARY KEY (dept_id)

Затем повторно измените это ограничение:

Alter table drop constriant tb_dept_pkey;

Alter table add constraint tb_dept_pkey PRIMARY KEY (dept_id);

2.2.3 could not read block 190 in file «base/272816/309624»

Решение и метод этой проблемы2.2.2 Проблема фестиваля точно такая же.

2.2.4 could not open file «base/272816/379923»: No such file or directory

Если в журнале появляется следующая информация:

2019-01-21 14:28:03 HKT ERROR:  could not open file «base/272816/379923″: No such file or directory

Объяснять,oidза272816В базе данных,oidза379923Файл, соответствующий таблице, удален.

Решение заключается в следующем:

1. Сначала судите, какая база данных произошла. Подключите любую базу данных и выполните следующим образомsql

select datname from pg_database where oid = 272816

Результаты запроса следующие:

    testdb

2. Восстановите базу данных из резервной копии.

 
Кирилл

 
(2004-08-28 17:31)
[0]

Мастера, помогите разобраться!
Я хочу создать ресурс для файла Mysound.WAV
Создаю текст. док., в нём пишу
MY_RES RSDATA C:Folder1Mysound.WAV
Потом захожу в ПУСК> …> Командная строка, там пишу
Brcc32 NOTEPAD1.RC
Выдаётся ошибка
Error Could not open input file NOTEPAD1.RC
Что я делаю не так?


 
GuAV ©

 
(2004-08-28 17:40)
[1]


> MY_RES RSDATA C:Folder1Mysound.WAV

MY_RES RCDATA C:Folder1Mysound.WAV

а лучше:
MY_RES WAVE C:Folder1Mysound.WAV — чтобу потом PlaySound его нашла.


 
GuAV ©

 
(2004-08-28 17:42)
[2]


> Error Could not open input file NOTEPAD1.RC

Хотя colud not open — не могу открыть. Это значит что или нет такого файла, или он открыт кем-то ещё или ещё какая фигня.


 
Yanis ©

 
(2004-08-28 17:44)
[3]

Brcc32 C:[Где находится файл RC]NOTEPAD1.RC


 
Кирилл

 
(2004-08-28 18:35)
[4]

Ничего не помогает!


 
antonn ©

 
(2004-08-28 18:51)
[5]

Создай ярлык в папке %delphibin программы Brcc32, а в параметрах задай имя файла. И создай его тут-же.


 
GuAV ©

 
(2004-08-28 19:01)
[6]

Может винда скрывает .тхт  после .rc
см. настройки проводника.


 
Кирилл

 
(2004-08-28 19:18)
[7]


> Может винда скрывает .тхт  после .rc
> см. настройки проводника.

NOTEPAD1.TXT помогло!!
Однако дальше опять проблема.
(Дело в том, что подобную процедуру я провожу впервые)
Компилятор не распознаёт PLAYSOUND и SND_MEMORY!


 
Кирилл

 
(2004-08-28 20:46)
[8]

Люди, помогите!
С чем это может быть связано? (7)


 
GuAV ©

 
(2004-08-28 20:48)
[9]

подключи MMSystem.

> SND_MEMORY

А чем бы прямо из ресурса не проиграть?


 
Кирилл

 
(2004-08-28 21:06)
[10]

Теперь с компилятором проблем нет, но звук почемуто не играется


 
Vit@ly ©

 
(2004-08-28 21:17)
[11]


> Теперь с компилятором проблем нет, но звук почемуто не играется

А как «проигрываешь»?
Выложи код :)


 
Кирилл

 
(2004-08-28 21:44)
[12]

unit Unit1;

{$R RES1.Res}

interface

...

implementation

{$R *.dfm}

Var
pData: Pointer;
hResource: THandle;

procedure TForm1.Button1Click(Sender: TObject);
begin
PlaySound(pData, 0, SND_MEMORY);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
hResource:=LoadResource( hInstance, FindResource(hInstance, "MY_RES", RT_RCDATA));
pData := LockResource(hResource);
end;

end.

{Я алгоритм взял в FAQ
http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988622528&n=22}


 
GuAV ©

 
(2004-08-28 22:11)
[13]

попробуй лудше писать так,
   PlaySound(«MY_RES»,Hinstance,SND_RESOURCE or SND_ASYNC); там где проиграть а ресурс обзови WAVE.

ps: скорее всего RCDATA не RCDATA — вот и не работает.


 
Кирилл

 
(2004-08-28 22:39)
[14]


> попробуй лудше писать так,
>    PlaySound(«MY_RES»,Hinstance,SND_RESOURCE or SND_ASYNC);
> там где проиграть а ресурс обзови WAVE.

Получилось, большое спасибо!
И последний вопрос (в нагрузочку :-) ):
Можно ли програмно изменять громкость, с которой процедура
PlaySound играет звук?


 
GuAV ©

 
(2004-08-28 22:54)
[15]


> Можно ли програмно изменять громкость, с которой процедура
> PlaySound играет звук?

с помощью PlaySound — только меняя громкость в миксере.


 
Кирилл

 
(2004-08-28 22:55)
[16]


> меняя громкость в миксере.

Это как?


 
GuAV ©

 
(2004-08-28 23:32)
[17]

Это… например sndvol32.exe
RTFM: Audio Mixers


 
Кирилл

 
(2004-08-29 12:52)
[18]

Если быть ближе к делу, знаешь, в игрушках можно для звуков чудовищ и для звуков музыки поставить разную громкость.
Так вот, хотелось бы знать, можно ли в Делфи реализовать подобную фигню (т. е. требуется одновременно воспроизводить разные звуки с разной громкостью) ??


 
Кирилл

 
(2004-08-29 13:22)
[19]

Подскажите пожалуста кто-нибудь 18, очень надо!


 
KSergey ©

 
(2004-08-29 13:28)
[20]

Одно записать в формате midi, другое — как wav
В миксере раздельно регулировать громкость


 
Кирилл

 
(2004-08-29 13:38)
[21]


> В миксере раздельно регулировать громкость

Как вообще это делать? (напиши пожалуста пару строк)


 
KSergey ©

 
(2004-08-29 13:59)
[22]

да про эти миксеры в том же яндексе..
не буду искать, надоело
попробуй в разделе «игры» поглядеть -возможно, что-то такое там есть


0 / 0 / 0

Регистрация: 11.07.2015

Сообщений: 1

1

12.07.2015, 00:10. Показов 2430. Ответов 1


Студворк — интернет-сервис помощи студентам

Добрового времени суток. Наверное некоторые из вас знают известную игру Perfect World. У меня была виндовс 7, снёс из-за того что каким то не понятным способом он заполнял весь диск. Поставил виндовс 8.1, вроде большинство программ стали работать. При запуске лаунчера игры, проблем не бывает, но после того как нажимаю вход, вылетает ошибка. Думал что это из-за регистрации в реестре, но нет. Переустановил игру, скачав патчер, но все та же ошибка. Помогите пожалуйста



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

12.07.2015, 00:10

Ответы с готовыми решениями:

Ошибка DB not open
Жила на одном компьютере программа, написанная на Дельфи с БД FIREBIRD, компьютер умер,…

Ошибка File not open
procedure TForm1.MenuItem7Click(Sender: TObject); //Работа А (Выбор по маске)
var
n:integer;

Ошибка: File already open (VB 6)
Здравствуйте форумчане! Есть лабораторная университетская, задание таково: добавить в файл имя…

CFilе::Open ошибка
Имеются две функции
m_File объявлен как
CFile m_File;

BOOL…

1

414 / 262 / 82

Регистрация: 27.10.2012

Сообщений: 860

12.07.2015, 00:28

2

Надо идти к окулисту, инфа 150%.



0



I cant get on because when i hit «Launch game» a message pops up saying «COULD NOT OPEN BOXFILE» and then i cant launch the game. I have verified files, re-opened launcher multiple times and still will not work, please help.

/res, Leader of Valorous

Okay nevermind, whatever it was it fixed itself and is working now.  :P

/res, Leader of Valorous

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account

Closed

jiyaping opened this issue

Jun 24, 2015

· 7 comments

Comments

@jiyaping

  1. place the box file package.box in c:
  2. type command vagrant box add testbox c:package.box
  3. result returned like below:
    ==> box: Adding box 'testbox' (v0) for provider:
    box: Downloading: file://c:/package.box
    box:
    An error occurred while downloading the remote file. The error
    message, if any, is reproduced below. Please fix this error and try
    again.

    Couldn't open file /package.box

i found that curl could’t find the file path using slash on windows. and using backslash like file://c:\package.box will work fine.

@sethvargo

Hi @jiyaping

What happens if you use the UNC filepath instead?

@jiyaping

hi @sethvargo

i have using file:\COMPUTERNAMEboxpackage.box instead. and the result not changed.

@NickMRamirez

Is it a problem of not being able to add the box if it’s in a directory other than the current one? I have been able to do:

vagrant package --base win2012_r2_x64 --vagrantfile Vagrantfile --output win2012_r2_x64.box
vagrant box add win2012_r2_x64.box --name nramirez/win2012_r2_x64

where the box file is in the current directory.

@jiyaping

@mitchellh

@drmaddy736

error Couldn’t open file /c:/my-bahmni-vagrant/package.box

@ghost

I’m going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@hashicorp
hashicorp

locked and limited conversation to collaborators

Apr 1, 2020

То, что серьезно, не всегда бывает верно (Б. Дизраэли).

Главное меню » Как решить ошибку “Could not open lock file /var/lib/dpkg/lock-frontend”

Как решить ошибку “Could not open lock file /var/lib/dpkg/lock-frontend”При использовании Linux вы можете столкнуться с различными ошибками. Одна из них может быть ошибкой «/var/lib/dpkg/lock». Это поправимо? Ну да! Это не паническая ошибка. Но прежде чем мы узнаем, как исправить эту ошибку, давайте разберемся, почему она возникает.

Почему возникает ошибка «/var/lib/dpkg/lock»

Эта ошибка обычно возникает, когда процесс обновляет систему, а вы пытаетесь получить доступ к системе для выполнения какой-либо другой операции. Например, система Ubuntu блокирует доступ «dpkg», чтобы операционная система не завершила процесс обновления. Это также может произойти из-за произвольного процесса, который постоянно работает в фоновом режиме и сохраняет задействованным «/var/lib/dpkg».

Эти процессы не позволяют вам устанавливать новые приложения или выполнять команды. Есть несколько способов решить эту проблему. Сначала тщательно диагностируйте проблемы, а затем приступайте к их исправлению. Давайте разберемся, как исправить эту проблему.

Стратегии решения ошибки «/var/lib/dpkg/»

Как обсуждалось выше, прежде чем приступить к исправлению, сначала убедитесь, что все в системе идеально. Затем убедитесь, что никакое приложение не устанавливается и не обновляет систему; если да, то дождитесь, пока приложение завершит установку. После этого вопросы будут автоматически решены.

Если очевидной проблемы нет, но вы все еще получаете эту ошибку, проверьте процесс, использующий диспетчер пакетов, введя команду ниже:

В нашем случае обновляется Ubuntu. Во время этого процесса «dpkg» заблокирован, и я не могу выполнять другие задачи, как показано на следующем изображении.

Чтобы исправить это, просто дождитесь завершения обновления. Если это не помогает, эту проблему также можно решить, убив процесс, который удерживал «dpkg» задействованным. Во-первых, определите процесс. Во многих случаях идентификатор процесса упоминается в сообщении об ошибке, или вы можете получить список процессов, используя «apt» с помощью указанной ниже команды:

Теперь, чтобы завершить процесс, используйте:

$ sudo kill [идентификатор процесса]

Если это не решит проблему, принудительно завершите процесс с помощью сигнала SIGKILL:

$ sudo kill -9 [идентификатор процесса]

Самый простой способ — убить все процессы, занимающие «apt» и «apt-get», как указано ниже:

$ sudo killall apt apt-get

Как исправить ошибку «/var/lib/dpkg/lock-frontend»

Вы можете столкнуться с более сложной ситуацией, и проблема может заключаться в «заблокированных» файлах. Файлы блокировки ограничивают доступ к системным файлам до тех пор, пока не будет выполнена определенная операция. По завершении процесса блокировка будет автоматически снята для выполнения дальнейших операций системы. Итак, чтобы решить эту проблему, вам необходимо удалить файлы блокировки. Во-первых, проверьте файл блокировки, используя:

$ sudo lsof /var/lib/dpkg/lock-frontend

Если вы видите что-то «автоматическое» в выводе, дождитесь завершения этого процесса, потому что система работает над обновлениями.

В противном случае получите идентификаторы процессов и завершите их с помощью:

$ sudo kill -9 [ идентификатор процесса ]

После этого вы можете удалить файл блокировки:

$ sudo rm /var/lib/dpkg/lock-frontend

Убедитесь, что вы перенастроили «dpkg» после удаления файла блокировки:

$ sudo dpkg --configure -a

Чтобы убедиться, что все в порядке и ошибка исправлена, запустите:

Заключение

Различные ошибки «/var/lib/dpkg» обычно возникают, когда система запрещает пользователю выполнять операцию, потому что другие ключевые процессы используют системные файлы. В этой статье мы обсудили различные стратегии избавления от этой ошибки. Более того, мы также узнали, как удалить ошибку «/var/lib/dpkg/lock-frontend».

Ошибка возникает из-за файлов блокировки, и безопасное удаление файлов блокировки может решить эту проблему. Хотя не рекомендуется удалять файлы блокировки, чтобы избежать каких-либо проблем, убедитесь, что вы используете правильный метод для удаления файла блокировки.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Загрузка…

Возможно, вам также будет интересно:

  • Ошибка could not connect to revolt server
  • Ошибка could not locate resources 0xe00300d0
  • Ошибка could not call proc при удалении
  • Ошибка could not load watch dogs legion
  • Ошибка could not access game process shutdown rockstar games launcher and steam and try again

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии