Установка Oracle 12c не смогла получить доступ к временному местоположению

У меня 64-разрядная ОС Windows 8.1, работающая в 64-битной архитектуре. Я устанавливаю новую копию Oracle 12C, значит, я еще не установил какую-либо версию в своей системе.

Во время установки я обнаружил следующее сообщение об ошибке:

Cause - Failed to access the temporary location.  Action - Ensure that the current user has required permissions to access the temporary location.  Additional Information:
 - Framework setup check failed on all the nodes  - Cause: Cause Of Problem Not Available  - Action: User Action Not Available Summary of the failed nodes al-naseeha  - Version of exectask could not be retrieved from node "al-naseeha"  - Cause: Cause Of Problem Not Available  - Action: User Action Not Available 

Код ошибки - [INS-30131]. У меня есть все привилегии администратора. Я также попытался решить эту проблему с помощью следующей команды:

net use \\localhost\c$

Но не напрасно. Не могли бы вы помочь мне разобраться в этой проблеме.

Ответ 1

Посмотрев на сайт поддержки Oracle, это может быть одна из двух вещей (может быть # 2 в вашем случае, но включая оба).

Проблема 1:

  • Включить административный ресурс для C $(для этого обратитесь к своему системному администратору или см. документ Microsoft http://support.microsoft.com/kb/314984)

  • Убедитесь, что все в порядке:

    • использование сети \\c $должно работать
    • текущий пользователь (т.е. пользователь в группе администратора) должен иметь все привилегии по умолчанию
  • Повторите установку

  • Удалить административный ресурс еще раз

Проблема 2: Удалите OracleRemExecService перед выполнением 32-разрядной или 64-разрядной установки Oracle Client 12c Release 1 на тот же Microsoft Windows x64 (64-разрядный) после установки 64-разрядного или 32-разрядного программного обеспечения Oracle.

  • Перейдите в раздел "Службы Windows"
  • Остановить OracleRemExecServiceV2

(Эта служба обладает интеллектом. Когда кто-то пытается остановить ее, эта служба удаляется. Это связано с тем, что эта служба не запускается из Oracle Home, как другие службы oracle, но из temp. Например: C:\Users\AppData\Local\Temp\oraremservi... )

  • Затем попробуйте установить 32-разрядную или 64-разрядную версию Oracle 12c на тот же 64-разрядный 64-разрядный Microsoft Windows.

Ответ 2

Ошибка вызвана из-за того, что административные ресурсы отключены. Если они не могут быть включены, выполните следующее обходное решение:

6.2.23 Ошибка INS-30131 при установке Oracle Database или Oracle Client

Если административные акции не включены при выполнении одного экземпляр Oracle Database или Oracle Client для 12c Release 1 (12.1) в Microsoft Windows 7, Microsoft Windows 8 и Microsoft Windows 10, то установка завершится с ошибкой INS-30131.

Обход проблемы:

Выполните команду net share, чтобы убедиться, что административный акции включены. Если они отключены, включите их следуя инструкциям в документации Microsoft Windows. В качестве альтернативы выполните установку клиента или сервера, указав следующие параметры:

  • Для установки клиента:

    -ignorePrereq -J"-Doracle.install.client.validate.clientSupportedOSCheck=false"

  • Для установки сервера:

    -ignorePrereq -J"-Doracle.install.db.validate.supportedOSCheck=false"

Эта проблема отслеживается с ошибкой Oracle 21452473.

Источник: Замечания о выпуске Oracle Database (раздел 6.2.23)

Ответ 3

Я нашел еще одну ситуацию, в которой эта проблема может возникнуть (несмотря на следующие шаги, перечисленные другими пользователями выше), и что когда имя пользователя пользователя, с которым вы вошли в систему, имеет на нем "_". Путь, который он попытается использовать для поиска временного каталога, - это все, что установлено в% TEMP%. Мне удалось обойти это:

  • Запустите cmd.exe в режиме администратора
  • SET TEMP = C:\TEMP
  • Запустите установщик из этого окна команд

Установлен успешно таким образом.

Ответ 4

Эта ошибка может быть вызвана именем пользователя с китайскими символами.

  • Создайте нового локального пользователя Windows с английским именем пользователя. Убедитесь, что в имени пользователя нет пробелов.
  • Установите Oracle, используя только что созданного пользователя.

Ответ 5

(Решение) Аналогичная проблема: Windows 10 против Oracle 11g (11.2.0.4)

Проблема возникает снова с окончательной версией Windows 10 (и Server 2016 Preview 3), используя e. г. Oracle 11g (11.2.0.4, 64 бит) после задач установки отлично справился с несколькими предварительными сборками Windows 10. Все сказанное выше - o. к. соответственно не работают.

Конечной причиной является несовместимость OracleRemExecService (vs. RemoteExecService.exe): как известно, в начале процесса установки она создается через% TEMP%\oraremservice. Если вы смотрите это e. г. с ProcessMonitor Sysinternals с использованием соответствующего фильтра вы можете увидеть несколько сбоев (большинство из них с "переполнением буфера" ) и перезапустить, а также есть сообщения в журнале событий Windows "System".

Если вы запустили (после удаления HKLM\Software\oracle в реестре) установка несколько раз (более трех раз - см. ниже), она внезапно срабатывает. Причиной такого поведения является механизм Windows "Механизм отказоустойчивой кучи" (см. https://msdn.microsoft.com/de-de/library/windows/desktop/dd744764(v=vs.85).aspx), который создается после трех попыток в течение 60 минут (см. http://blogs.technet.com/b/askperf/archive/2009/10/02/windows-7-windows-server-2008-r2-fault-tolerant-heap-and-memory-management.aspx) запись FTH в HKLM\Software\Microsoft\FTH\State и соответствующая прокладка в HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers. Хотя содержимое записи FTH связано с текущим процессом RemoteExecService.exe, вы можете импортировать ключи реестра в систему до начала установки БД. Если вы устанавливаете переменную окружения Windows%% TEMP% , а также% TMP% (из-за того, что Oracle использует и каталоги при создании вещей вокруг OracleRemExecService) до предопределенного значения (например, C:\TEMP), вы можете использовать это для всех своих задач установки следующим образом (к сожалению, он работает только с Windows 10, а не с сервером 2016 - обновлен 2015-09-24, см. ниже):

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Temp\\oraremservice\\RemoteExecService.exe"="FaultTolerantHeap"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FTH\State]
"C:\\Temp\\oraremservice\\RemoteExecService.exe"=hex:10,00,00,00,10,00,00,00,\
  0c,b4,ff,0c,52,00,65,00,6d,00,6f,00,74,00,65,00,45,00,78,00,65,00,63,00,53,\
  00,65,00,72,00,76,00,69,00,63,00,65,00,2e,00,65,00,78,00,65,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00

Обновление 2015-09-24: С Server 2016 (Preview 3) это немного сложнее: сначала вы также должны установить переменную окружения% TEMP% e. г. на C:\Temp и для импорта ключей реестра выше (после этого не стоит забывать перезагружать систему). Затем вы запускаете установку Oracle с помощью дополнительного параметра:

setup.exe -debug

Если вы посмотрите, что происходит в% TEMP%, вы можете увидеть, что папка% TEMP%\oraremservice\создается дважды: после первого создания установщик, похоже, заметил, что служба не работает, удаляет папку и создает ее еще раз. После этого процесс установки работает так, как ожидалось.

Обновление 2015-11-27: - Используя Windows Server 2016 Preview 4, обходной путь через "setup.exe -debug" больше не нужен; вы можете продолжить, как описано для Windows 10. - Конечно, вам не нужна процедура с новыми C:\TEMP против% TEMP% и% TMP%, если у вас есть определенный пользователь (например, администратор). Затем вы можете использовать измененные элементы реестра, например:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Users\\Administrator\\AppData\\Local\\Temp\\oraremservice\\RemoteExecService.exe"="FaultTolerantHeap"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FTH\State]
"C:\\Users\\Administrator\\AppData\\Local\\Temp\\oraremservice\\RemoteExecService.exe"=hex:10,00,00,00,10,00,00,00,\
  0c,b4,ff,0c,52,00,65,00,6d,00,6f,00,74,00,65,00,45,00,78,00,65,00,63,00,53,\
  00,65,00,72,00,76,00,69,00,63,00,65,00,2e,00,65,00,78,00,65,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00

Обновление 2017-01-31: до сих пор протестировано все сборки Windows 10 (предварительный просмотр в инсайдере), поэтому мы увидели новую проблему со сборкой 15002: установка Oracle больше не может определить переменную PATH ( сама переменная, а не неправильный контент или так далее!). Таким образом, все попытки установки Oracle DB терпят неудачу. Сравнение реестра версий Windows и "игра вокруг" с этой переменной и их содержимое не помогло. Единственный способ - отредактировать связанный файл XML\64bit | 32bit\stage\cvu\cvu_prereq.xml и удалить в разделе все теги... (или этот тег только в последнем элементе "Windows Server 2012" ). И кстати: несмотря на то, что мы в основном используем Oracle 11g, эта новая проблема установки также возникает с использованием современной настройки Oracle 12c...

Ответ 6

Попробуйте очистить файл хостов.

Я потратил около полудня на это, и ни один из этих ответов не работал у меня. Наконец, я нашел решение, намеченное на OTN (последнее место, где я смотрю, когда сталкиваюсь с проблемами Oracle), и кто-то упомянул о том, как посмотреть на файл hosts. Недавно я изменил файл hosts, потому что этот конкретный компьютер не имел доступа к DNS.

У меня была строка для этого хоста:

123.123.123.123     fully.qualified.domain.name.com     hostname

Комментируя вышеприведенную строку, я смог установить клиент Oracle.

Ответ 7

Основной проблемой в вашем случае будет отказ доступа к \\localhost\c $

Если вы получаете сообщение об ошибке при попытке получить доступ к скрытой папке C (C $) Windows:

C: \ > net use\\localhost\c $
Произошла системная ошибка 53.

Сетевой путь не найден.

Вы можете найти следующие полезные статьи: KB254210 и KB951016.

Простая вещь - просто убедиться, что ваши службы TCP/IP NetBIOS Helper и Server запущены (Start-Run, services.msc) и повторите попытку:

C: \ > net use\localhost\c $
Команда успешно завершена.

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

Если все еще не удается, вручную отредактируйте реестр (Start-Run, regedit). Перейдите по ссылке:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

и создайте новое значение DWORD LocalAccountTokenFilterPolicy, установленное в 1

После решения этой проблемы и установки Oracle Database Server вы можете отключить службу TCP/IP NetBIOS Helper, если она вам больше не нужна.

Ссылки: http://groglogs.blogspot.ro/2013/11/windows-cannot-access-hidden-c-admin.html



Для других:
Если у вас нет проблемы с \\localhost\c $, у вас может возникнуть другая проблема с вашим именем пользователя, как указано другими (например, имя пользователя с "_" в нем):
Это можно решить, изменив переменные среды TEMP и TMP из командной строки, а затем запустив setup.exe.

Если это все еще не работает:
Попробуйте запустить setup.exe с опцией " -debug" и посмотрите, что там происходит.
Вы также можете проверить, что в файлах .log, созданных в папке% TEMP% (например, ssproiut_% number%.log)

Ответ 8

Моя проблема заключалась в том, что служба сервера была остановлена, и это дало именно ту же проблему. Так началось обслуживание сервера и работа с ним была выполнена.

Ответ 9

Подведено: Oracle под Windows имеет проблемы с именами пользователей, содержащими неанглийские буквы или специальные символы:

Если ваша машина установлена ​​свежей, сначала посмотрите здесь. Все связанные с сетью или 32 или 64 связанные с этим проблемы могут быть незначительными для вас:

Как уже отмечалось ранее, эта ошибка сильно связана с именем TEMP-каталога. Мне пришло в голову при установке Oracle 11g в первый раз на совершенно новую Windows (например, Server 2008 R2 или Win 7, не важно).

Как я узнал, на моей машине проблема заключалась в том, что имя пользователя содержало немецкий специальный символ ( "ö" ). Кроме того, Oracle не может обрабатывать какой-либо особый символ, я полагаю, путь TEMP ограничен буквами. Другие коллеги здесь сообщили о проблемах с подчеркиванием и китайскими персонажами.

Объяснение: В Windows в каталоге пользователя по умолчанию используется параметр TEMP (переменная среды% TEMP%), например:

C:\Users\ThisUser\AppData\Local\Temp

Если "ThisUser" содержит специальные символы или символы, отличные от ASCII, то в этом случае это влияет на путь TEMP, и именно здесь проблемы с серверами возникают.

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

Кроме того, Oracle не является полностью родным гражданином Windows, который все узнают, если он откроет лог файл установки Oracle с помощью блокнота;-) Очевидно, что это не запрограммировано чисто и портативно, например. с использованием "std:: endl" вместо "\n". (Да, Notepad ++ и другие редакторы выполняют эту работу.)

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

Последнее замечание: Да, после неудачной установки из-за специальных символов вы видите только одну службу Oracle с именем OracleRemExecService, но нет причин останавливать это вручную, как рекомендовано в других решениях, если вы можете снова установить новую ОС..

Ответ 10

Если в вашей учетной записи пользователя есть пробелы, и вы пробовали все вышеперечисленное, но не работали,

Я рекомендовал вам создать новую учетную запись пользователя Windows и дать ей административная привилегия, а не стандартная.

Выйдите из старой учетной записи и войдите в эту новую учетную запись и попробуйте установить ее снова. Он работал хорошо.

Ответ 11

Вы можете настроить setup.exe, чтобы пропустить эту проверку, используя параметры ниже -

setup.exe -ignorePrereq -ignorePrereq -J"-Doracle.install.db.validate.supportedOSCheck=false"

Ответ 12

Эта проблема возникает из-за административной доли.

Вот решение:

  1. Установите значение HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System DWORD: LocalAccountTokenFilterPolicy в 1

  2. Перейдите по этой ссылке: http://www.snehashish.com/install-oracle-database-12c-software/ Следуйте 8-й точке.
    Это очень помогло мне.
    После создания скрытой доли (c $) она должна выглядеть так (вы может игнорировать вкладку описания)

ST1Tc.jpg И для останова вы можете следовать приведенной выше ссылке.

И дайте мне знать, если это сработало или нет.

Ответ 13

Я столкнулся с этой ошибкой при попытке установить клиент 12c 32x в Windows 10. "net use \\localhost\c$" работал, но когда я заменил "localhost" на "имя" компьютера (например, \\my-computer\c$), я получил "System error 53 ...". Кажется, что Oracle предпочитает имя компьютера.

Что исправлено: мы временно отключили протокол IPv6 для компьютера (наша сеть использует IPv4). Как это сделать: Панель управления → Центр управления сетями и общим доступом → Изменить настройки адаптера → щелкните правой кнопкой мыши по Ethernet-соединению → Свойства → снимите флажок "Протокол Интернета версии 6 (TCP/IPv6) → OK Это должно отключить его, после чего \\my-computer\c$ успешно запущен в командной строке. Затем программа установки Oracle завершена, и мы смогли настроить сервер базы данных.

Чтобы проверить это, мы снова включили IPv6 и перезапустили компьютер. \\my-computer\c$ не удалось выполнить команду cmd, но tnsping все еще функционирует правильно.

Я надеюсь, что это поможет кому-то в будущем.