Ошибки оракла ora-02000 — ora-02999

Создание строки соединения TNS (корректировка TNSNAMES.ORA)

            После
создания SID, необходимо прописать соединение с ним в файле TNSNAMES.ORA (в каталоге %ORACLE_HOME%\NET80\ADMIN на сервере и клиентах). В файле TNSNAMES.ORAпрописывается TNS (другие
названия: строка соединения, сервис, вход, DBQ) – псевдоним
для соединения с БД Oracleпо
определенному протоколу(ам). Если TNSне прописан, то не будет выполняться коннект (подсоединение
к БД), а нам сейчас это необходимо для запуска БД и ее последующей генерации
(не говоря вообще о работе с БД). Файл TNSNAMES.ORA должен находиться как на сервере, так и на всех
клиентских местах.

Опишите TNSВашей
БД в файле TNSNAMES.ORA примерно следующим образом:

NYORK.WORLD =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS =

        (COMMUNITY=TCP.world)

        (PROTOCOL=TCP)

        (Host=171.15.36.6)

        (Port=1521)

      )

    
(ADDRESS=(COMMUNITY=IPC.world)(PROTOCOL=IPC)(KEY=ORC1))

     (ADDRESS=(COMMUNITY=SPX.world)(PROTOCOL=SPX)(Service=NVG5_LSNR))

    )

    (CONNECT_DATA =

      (SID=ORC1)

      (GLOBAL_NAME=NYORK.world)

)

  )

Прежде всего необходимо прописатьTCPIP-адрес
для первого параметра ADDRESS, а
также SID и GLOBAL_NAMEдля раздела CONNECT_DATA. Адресов по другим протоколам может не быть. Если же
описано несколько протоколов, то соединение с БД начинает выполняться поочередно.
Если, например, связь по первому протоколу не работает, то Вы будете ждать
около минуты, пока не настанет очередь следующего протокола. Поэтому в данном
случае поставьте рабочий протокол на первое место. После исправления
технических неполадок, можете опять эти строки поменять местами.

            Проверить
корректность исправлений в файле TNSNAMES.ORA (по
протоколу TCPIP) можно, задав команду: TNSPINGВашTNS.

Пример файла TNSNAMES.ORAдан в приложении 7.4.

Общие сведения о дисковых квотах NTFS в Windows

Вы можете использовать дисковые квоты Windows, чтобы ограничить максимальный размер файлов и папок для каждого пользователя, чтобы они не занимали все дисковое пространство своими данными. Дисковые квоты доступны как в серверной, так и в настольной версиях Windows.

Ключевые особенности и ограничения квот NTFS:

  • Квоты могут применяться только ко всему  тому (разделу) в формате NTFS. Этот тип квоты не работает на дисках ReFS;
  • Квоты применяются ко всем пользователям, которые хранят свои данные в этом разделе. Вы не можете применить квоту к группе пользователей или отдельной папке. В этом случае лучше использовать FSRM;
  • Владение файлами и папками определяется путем проверки записи «Владелец» в дескрипторе безопасности NTFS;
  • По умолчанию Windows сканирует раздел с включенными дисковыми квотами и вычисляет общий размер файла для каждого пользователя один раз в час;
  • При использовании сжатия NTFS учитывается исходный размер файла (до сжатия).

Существуют следующие сценарии использования дисковых квот NTFS:

  • Мониторинг использования диска — просмотр статистики использования дискового пространства пользователя на сервере;
  • Мониторинг и уведомление — помимо первого сценария, при превышении квоты в Event Viewer записывается событие с информацией об имени пользователя и использовании квоты;
  • Контроль использования диска — при превышении квоты пользователь не может сохранять новые файлы

Пакет DBMS_RESUMABLE

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

Процедура получает один аргумент: идентификатор прерываемого сеанса. Это позволяет вызывать из триггеров из уровня или . Прерванный сеанс получает ошибку ORA-01013 (пользователь запросил операцию отмены текущей операции).

Действительно, отмена была запрошена пользователем — но каким именно? Кроме процедуры , пакет содержит функции и процедуры для чтения и назначения тайм-аута:

 GET_SESSION_TIMEOUT — возвращает значение тайм-аута приостановленного сеанса по идентификатору сеанса:

 SET_SESSION_TIMEOUT — задает значение тайм-аута приостановленного сеанса по идентификатору сеанса:

 GET_TIMEOUT — возвращает значение тайм-аута текущего сеанса:

 SET_TIMEOUT — задает значение тайм-аута текущего сеанса:

Новые значения тайм-аута вступают в действие немедленно, но не обнуляют счетчик.

Установка пороговых сигналов

Простейший способ установки и модификации сигналов о свободном месте в табличном пространстве предусматривает использование Oracle Enterprise Manager (OEM).Просто зайдите на домашнюю страницу OEM и выберите Administration->Related Links->Manage Metrics->Edit Thresholds (Администрирование->Связанные ссылки->Управление метриками->Редактировать пороги). На странице Edit Thresholds (Редактирование порогов) можно установить пороговые значения для выдачи предупреждающих и критичных сигналов для табличных пространств. Можно также специфицировать действия, выполняемые в ответ на получение сигналов, в форме командных сценариев или сценариев, доступных агенту управления (Management Agent).

Кроме того, для установки предупреждающих и критичных сигналов можно воспользоваться предоставляемым Oracle пакетом PL/SQL под названием DBMS_SERVER_ALERT.В листинге ниже показано, как устанавливается пороговое значение для сигнала об “оставшихся байтах” с использованием значений атрибутов.

SQL> BEGIN
DBMS_SERVER_ALERT.SET_THRESHOLD(
metrics_id              => DBMS_SERVER_ALERT.TABLESPACE_BYT_FREE,
warning_operator        => DBMS_SERVER_ALERT.OPERATOR_LE,
warning_value           => '10240',
critical_operator       => DBMS_SERVER_ALERT.OPERATOR_LE,
critical_value          => '2048',
observation_period      => 1,
consecutive_occurrences => 1,
instance_name           => NULL,
object_type             => DBMS_SERVER_ALERT.OBJECT_TYPE_TABLESPACE,
object_name             => 'USERS');
END;
SQL>

Обратите внимание, что в листинге выше атрибут warning_value устанавливает порог предупреждающего сигнала в 10 Мбайт, а атрибут critical_varning — порог критичного сигнала в 2 Мбайт. Чтобы выйти из ситуации с недостатком свободного места, всегда можно добавить к табличному пространству новый файл данных

Однако в большинстве случаев имеется способ вообще избежать этой проблемы; он предусматривает использование автоматически расширяемых табличных пространств. Автоматически расширяемые табличные пространства автоматически увеличиваются в размере по мере роста табличных или индексных данных, содержащихся в них. Для новых баз данных это может показаться блестящим решением, избавляющим от ошибок, связанных с недостатком места, при создании табличных пространств, которые слишком малы, и от пустой траты места,когда создается слишком большое табличное пространство. Создать автоматически расширяемое табличное пространство очень легко. Все что для этого нужно — включить конструкцию AUTOEXTEND для файла данных в команду создания или изменения табличного пространства. Нужно лишь удостовериться в наличии достаточного места на диске, чтобы автоматически расширяемый файл данных уместился

Чтобы выйти из ситуации с недостатком свободного места, всегда можно добавить к табличному пространству новый файл данных. Однако в большинстве случаев имеется способ вообще избежать этой проблемы; он предусматривает использование автоматически расширяемых табличных пространств. Автоматически расширяемые табличные пространства автоматически увеличиваются в размере по мере роста табличных или индексных данных, содержащихся в них. Для новых баз данных это может показаться блестящим решением, избавляющим от ошибок, связанных с недостатком места, при создании табличных пространств, которые слишком малы, и от пустой траты места,когда создается слишком большое табличное пространство. Создать автоматически расширяемое табличное пространство очень легко. Все что для этого нужно — включить конструкцию AUTOEXTEND для файла данных в команду создания или изменения табличного пространства. Нужно лишь удостовериться в наличии достаточного места на диске, чтобы автоматически расширяемый файл данных уместился.

Создание связей между базами данных

            Связь
между БД Предприятий и Объединения необходима для создания в Предприятии
моментальных снимков таблиц Объединения в случае выбора последними
3-уровневой модели.

            Создание
связей между двумя БД требует знания ряда тонкостей. В частности, после
параметра usingнадо
указывать именно имя сервиса для другой БД (описанное в TNSNAMES.ORAи называемое
также строкой соединения), а после параметра databaselink – именно имя другой БД (если в файле INIT<SID>.ORAуказано
GLOBAL_NAMES = TRUE). Впрочем, часто имя сервиса делают идентичным имени
БД.

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

            Вот
пример создания связи Объединение — Компания и связи Компания —
Объединение
:

4: Включение квот

Прежде чем включить систему квот, нужно один раз вручную запустить команду quotacheck:

Эта команда создает файлы /aquota.user и /aquota.group. Эти файлы содержат информацию об ограничениях и использовании файловой системы, и на момент, когда вы включите мониторинг квот, они должны уже существовать. Используйте такие параметры quotacheck:

  • u: указывает, что нужно создать файл квоты для пользователей;
  • g: указывает, что нужно создать файл квоты для группы;
  • m: отключает перемонтирование файловой системы как доступной только для чтения при выполнении начального подсчета квот. Перемонтирование файловой системы только для чтения даст более точные результаты в случае, если пользователь активно сохраняет файлы во время процесса, но не является необходимостью во время начальной настройки.

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

убедитесь, что соответствующие файлы созданы, просмотрев каталог root:

Если вы не включили параметры u или g в команду quotacheck, соответствующий файл будет отсутствовать. Теперь можно включить систему квот:

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

Ошибка ORA-01152

Ошибка ORA-01152 (сопровождаемая сообщением “File # was not restored from a sufficiently old backup” (“Файл # не был восстановлен из достаточно старой резервной копии”)) преследует довольно многие сеансы по восстановлению данных. Она представляет собой довольно интересную ситуацию и имеет подобное предыдущему примеру решение. Администратор предоставляет все архивные журналы повторного выполнения, которые запрашивает Oracle, но все равно получает эту же ошибку, как показано в листинге 3 ниже: 

ORA-00289: suggestion: /u01/app/oracle/admin/finance/arch/finance/_0000012976.arc
предлагается использовать: /u01/app/oracle/admin/finance/arch/
finance/_0000012976.arc
ORA-00280: change 962725326 for thread 1 is in sequence #12976
необходимое для потока 1 изменение 962725326 находится в журнале
с порядковым номером #12976
ORA-00278: logfile '/u01/app/oracle/admin/finance/arch/finance/_0000012975.arc'
no longer needed for this recovery
файл журнала '/u01/app/oracle/admin/finance/arch/finance/_0000012975.arc'
больше не требуется для данного процесса восстановления
Specify log: {=suggested | filename | AUTO | CANCEL}
Укажите журнал: {=suggested | filename | AUTO | CANCEL}
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
предупреждение: процедура RECOVER удалась, но OPEN RESETLOGS приведет
к выдаче показанной ниже ошибки
ORA-01152: file 1 was not restored from a sufficiently old backup
файл 1 не был восстановлен из достаточно старой резервной копии
ORA-01110: data file 1: '/pase16/oradata/finance/system_01.dbf'
файл данных 1: '/pase16/oradata/finance/system_01.dbf'
ORA-01112: media recovery not started
восстановление носителя не запущено

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

SQL> recover database until cancel using backup controlfile;
ORA-00279: change 962726675 generated at 07/30/2008 04:32:48 needed for thread 1
необходимое для потока 1 изменение 962725326 было
сгенерировано 07/30/2008 04:32:48
ORA-00289: suggestion : /u01/app/oracle/admin/finance/arch/finance/_0000012977.arc
предлагается использовать:/u01/app/oracle/admin/finance/arch/finance/
_0000012977.arc
ORA-00280: change 962726675 for thread 1 is in sequence #12977
необходимое для потока 1 изменение 962725326 находится в журнале
с порядковым номером #12976 

В ответ Oracle снова запрашивает архивный журнал повторного выполнения, но поскольку в процессе восстановления уже было сказано о том, что никаких архивных журналов повторного выполнения больше использовать не нужно, можно проигнорировать этот вводящий в заблуждение запрос и предоставить Oracle имена восстановленных оперативных журналов повторного выполнения, начиная с самого первого. В одном из них как раз и будет присутствовать запрашиваемый процессом восстановления номер изменения (SCN=962726675). То есть достаточно указать Oracle на свои файлы журналов повторного выполнения, а точнее — на один из каждой группы этих журналов. В листинге 4 показана остальная часть данного процесса восстановления. 

Specify log: {=suggested | filename | AUTO | CANCEL}
/pase04/oradata/finance/redo01a.rdo
ORA-00279: change 962746677 generated at 07/30/2008 04:33:52 needed for thread 1
необходимое для потока 1 изменение 962725326 было
сгенерировано 07/30/2008 04:32:48
ORA-00289: suggestion : /u01/app/oracle/admin/finance/arch/finance/_0000012978.arc
предлагается использовать:/u01/app/oracle/admin/finance/arch/finance/
_0000012978.arc
ORA-00280: change 962746677 for thread 1 is in sequence #12978
необходимое для потока 1 изменение 962725326 находится в журнале
с порядковым номером #12976
ORA-00278: log file '/pase04/oradata/finance/redo01a.rdo'no longer needed for
this recovery
файл журнала '/u01/app/oracle/admin/finance/arch/finance/_0000012975.
arc' больше не требуется для данного процесса восстановления
Specify log: {=suggested | filename | AUTO | CANCEL}
/pase04/oradata/finance/redo02a.rdo
Log applied.
Media recovery complete.
SQL>

5: Настройка квоты для пользователя

Есть несколько способов установить квоты для пользователей или групп. Здесь мы рассмотрим, как устанавливать квоты с помощью команд edquota и setquota.

Установка квоты пользователя с помощью edquota

Команда edquota предназначена для редактирования квот. Давайте отредактируем пример квоты пользователя 8host:

Опция -u указывает, что это квота, которую нужно отредактировать, является пользовательской. Если вы хотите вместо этого изменить квоту группы, используйте опцию -g.

Это откроет файл в текстовом редакторе по умолчанию (как crontab -e открывает временный файл для редактирования). Файл будет выглядеть примерно так:

Здесь перечислены имя пользователя и uid, файловые системы, для которых включены квоты, а также ограничения на основе блоков и индексов. Установка квоты на основе индексов ограничит количество файлов и каталогов, которые может создать пользователь, независимо от дискового пространства, которое они используют. Большинству людей нужны блочные квоты, которые ограничивают использование дискового пространства. Давайте попробуем настроить такие квоты.

Примечание: Понятие блока плохо обозначена и может меняться в зависимости от многих факторов, включая то, какой инструмент командной строки используется. В контексте установки квот в Ubuntu можно предположить, что 1 блок равен 1 килобайту дискового пространства.

В приведенном выше списке пользователь 8host использует 40 блоков или 40 КБ места на диске /dev/vda1. Ограничения soft и hard отключены значением 0.

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

Давайте выделим пользователю 8host блочную квоту с мягким пределом в 100MB и жестким пределом в 110MB.

Сохраните и закройте файл. Чтобы проверить квоты, используйте команду quota:

Команда выведет текущее состояние квоты и покажет, что квота составляет 100М, а лимит равен 110М. Это отвечает мягким и жестким ограничениям, которые мы установили.

Примечание: Если вы хотите, чтобы ваши пользователи могли проверять свои квоты, не имея доступа к sudo, вам нужно дать им разрешение на чтение файлов квот, которые вы создали в разделе 4. Это можно сделать так: создайте группу users, сделайте эти файлы доступными для чтения группой users, а затем убедитесь, что все ваши пользователи включены в эту группу.

Чтобы узнать больше о правах Linux, читайте мануал Привилегии в Linux: что это и как с этим работать.

Установка квоты пользователя с помощью setquota

В отличие от edquota, setquota будет обновлять информацию о квоте пользователя в одной команде, без интерактивного этапа редактирования. Вы можете определить имя пользователя и мягкие и жесткие ограничения для квот на основе блоков и индексов, и, наконец, файловую систему, к которой будет применена квота:

Приведенная выше команда удвоит квоту 8host на основе блоков до 200 мегабайт и 220 мегабайт. Значения 0 0 – это настройки мягких и жестких пределов квоты на основе индекса (это значит, что такая квота не установлена). Эти значения необходимо указать, даже если вы не устанавливаете никаких квот на основе индексов.

Снова используйте команду quota, чтобы проверить квоту:

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

Устранение возможных ошибок при создании связанного сервера с Oracle в Microsoft SQL Server

Ошибка 7302

«Не удалось создать экземпляр поставщика OLE DB «OraOLEDB.Oracle» для связанного сервера …»

Возможно, отсутствует (или некорректный) путь к каталогу с Instant Client (каталог в который Вы установили ODAC) в системной переменной PATH. Необходимо его прописать и перезапустить SQL сервер. Также возможно параметр ORACLE_HOME задан неверно.

Ошибка 7303

Данная ошибка возвращается SQL сервером в случае, когда не удалось проинициализировать объект источника данных поставщика OLE DB, например, в нашем случае «OraOLEDB.Oracle». Причин, по которым она появляется много, поэтому нам необходимо смотреть ошибку, которую вернул сам провайдер.

Ошибки при инициализации провайдера OraOLEDB.Oracle

Описание ошибки Возможные причины, устранение
ORA-01017: invalid username/password; logon denied Неправильно указан логин и пароль к БД Oracle.
ORA-12154: TNS:could not resolve the connect identifier specified Файл tnsnames.ora отсутствует или в нем указан несуществующий SID и SERVICE_NAME. Также возможно Вы неправильно ввели его при создании связанного сервера в строке «Источник данных».
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor В файле tnsnames.ora неправильно введен SERVICE_NAME
ORA-12533: TNS:illegal ADDRESS parameters Некорректное название параметров в файле tnsnames.ora (например, ADDRESS).
ORA-12541: TNS:no listener Ошибка означает, что у Вас в файле tnsnames.ora неправильно указан PORT, на котором работает сервер Oracle. Необходимо узнать на каком порту работает сервер Oracle, и указать его в этом параметре.
ORA-12545: Connect failed because target host or object does not exist Данная ошибка возвращается тогда, когда в файле tnsnames.ora неправильно указан (или просто недоступен) сервер Oracle, т.е. параметр HOST. В данном случае необходимо: проверить данный параметр, проверить доступность сервера.

В случае если у Вас в каких-нибудь сообщениях выскакивает провайдер OLE DB «MSDAORA» (или любой другой провайдер или вообще он не указан), то это означает, что Вы неправильно выбрали провайдера при создании связанного сервера. MSDAORA – это провайдер от компании Microsoft. OraOLEDB.Oracle – от компании Oracle, как я говорил, рекомендовано использовать провайдер от Oracle.

Теперь давайте рассмотрим несколько ошибок, которые могут возникнуть уже после создания связанного сервера, т.е. связанный сервер создан, но при обращении к его объектам возникает ошибка.

Ошибка 7314

«Поставщик OLE DB «OraOLEDB.Oracle» для связанного сервера «Название сервера» не содержит таблицы «Название таблицы». Таблица либо не существует, либо текущий пользователь не имеет разрешения на доступ к ней.»

Здесь Вы, наверное, ошиблись в написании самого объекта, например, написали имя объекта в неправильном регистре. Oracle чувствителен к регистру, если к нему обращаться через ссылку связанного сервера, например

   
    SELECT * FROM ORACLEDB..ORACLEUSER.OracleTable

В этом случае если таблица OracleTable на сервере Oracle создана как ORACLETABLE, у Вас возникнет ошибка. Чтобы этого избежать, можно указать правильный регистр или использовать конструкцию OPENQUERY, например

   
    SELECT * FROM OPENQUERY(ORACLEDB, 'SELECT * FROM OracleTable')

Также не исключено что объекта действительно нет или у Вас отсутствуют необходимые разрешения.

Для того чтобы посмотреть, какие объекты и в каком регистре есть на сервере (т.е. узнать точное имя) можно использовать процедуру sp_tables_ex, например

   
    EXEC sp_tables_ex @table_server=«Имя связанного сервера», @table_schema='«Имя пользователя»'

Ошибка 7356

«Поставщик OLE DB «MSDAORA» для связанного сервера «Название сервера» предоставил несогласованные метаданные для столбца.»

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

Ошибка 7357

«Не удалось обработать объект «Название объекта». Поставщик OLE DB «OraOLEDB.Oracle» для связанного сервера «Название сервера» обнаружил, что у объекта либо нет ни одного столбца, либо текущий пользователь не имеет разрешения на доступ к объекту.»

В данном случае скорей всего Вы пытаетесь обратиться к таблице (или другому объекту) от имени пользователя, который не имеет разрешения на доступ к ней. Другими словами, у пользователя, которого Вы указывали при создании связанного сервера, нет необходимых прав.

На этом у меня все, пока!

НравитсяНе нравится

Типы табличных пространств

Помимо табличных пространств System и Sysaux, скорее всего, у вас будут табличные пространства Undo и Temporary. У вас также будет несколько других “постоянных” табличных пространств для хранения данных и индексов.

Ниже перечислены ключевые типы табличных пространств, с которыми вам, вероятно, придется встретиться.

  • Табличные пространства Bigfile с единственным большим файлом, чей максимальный размер находится в пределах от 8 до 128 Тбайт, в зависимости от размера блока базы данных. Таким образом, ваша база данных может предположительно храниться только в одном табличном пространстве Bigfiile.
  • Табличные пространства Smallfile может включать множество файлов данных, но файлы не могут быть такими же большими, как в Bigfile. Табличные пространства Smallfile являются табличными пространствами, создаваемыми по умолчанию в Oracle Database 11g, поэтому Oracle создает System и Sysaux именно как табличные пространства Smallfile.
  • Табличные пространства Temporary содержат данные, которые существуют лишь на протяжении сеанса работы пользователя. Обычно Oracle использует эти табличные пространства для сортировки и других подобных действий пользователей.
  • Табличные пространства Permanent включают все табличные пространства, которые не являются Temporary.
  • Табличные пространства Undo содержат записи отмены, которые Oracle использует для отката, или отмены изменений, в базе данных.
  • Табличные пространства Read-only не допускают операций записи в свои файлы данных. Вы можете преобразовать любое нормальное табличное пространство в пространство только для чтения, чтобы защитить данные или исключить необходимость в выполнении резервного копирования и восстановления крупных файлов данных, которые не изменяются.

Как исправить ошибку «Превышена квота на скачивание», если вы являетесь владельцем

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

Проблема для вас заключается в том, что так много людей скачали ваш общий файл, что сработал фильтр Google, блокирующий будущие загрузки. Эта блокировка относится к этому конкретному файлу, а не к самой учетной записи Google Диска.

Это означает, что любые другие общие файлы все еще могут быть загружены. Если вы превратите исходный файл, для которого теперь заблокированы загрузки, в «другой» файл, вы можете снова заставить загрузку работать.

Для этого просто кликните правой кнопкой мыши исходный файл и выберите «Сделать копию».

Вы увидите, что новый файл появится с «Копией» перед исходным именем. 

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

Для этого кликните файл правой кнопкой мыши и выберите «Поделиться».

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

В разделе «Получить ссылку» выберите «Изменить».

Используйте раскрывающийся список, чтобы изменить этот параметр на «Ограничено».

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

Таким образом, вы можете быть уверены, что не так много людей будут скачивать файл и подвергать риску вашу учетную запись Google Drive из-за блокировки со стороны Google.

Certificate of the remote server does not match the target address.

Эта заметка относится к Oracle Database 12.2.

В wallet-файле есть необходимый сертификат, но при обращении к ресурсу получаем ошибку:

> SELECT substr(utl_http.request('https://www.habr.com', NULL, 'file:/home/oracle/last_used_wallet', 'pwdtst123'),1,50) r FROM dual; 
SELECT substr(utl_http.request('https://www.habr.com', NULL, 'file:/home/oracle/last_used_wallet', 'pwdtst123'),1,50) r FROM dual 
* 
ERROR at line 1: 
ORA-29273: HTTP request failed 
ORA-06512: at "SYS.UTL_HTTP", line 1501 
ORA-24263: Certificate of the remote server does NOT match the target address. 
ORA-06512: at "SYS.UTL_HTTP", line 380 
ORA-06512: at "SYS.UTL_HTTP", line 1441 
ORA-06512: at line 1

В utl_http.request в данном релизе добавили аргумент «», который должен соответствовать CN из SSL-сертификата и который выручает, когда адрес сайта отличается от адреса, на который был выпущен сертификат. Однако, firefox, например, не даёт информации о CN (или я не знаю где искать), потому пришлось задействовать openssl:

$ openssl s_client -showcerts -connect habr.com:443 < devnull 2>/devnull | sed -n -e '/ 0 s:/ s/.*CN=\(.*\)/\1/p'
habrahabr.ru

«» и есть то значение, которое необходимо подставить:

> SELECT substr(utl_http.request('https://www.habr.com', NULL, 'file:/home/oracle/last_used_wallet', 'pwdtst123',https_host=>'habrahabr.ru'),1,50) r FROM dual;
 
R
-------------------------------------------------------
<!DOCTYPE html>
<html lang="ru" class="no-js">
  <

Ещё один широко известный в узких кругах ресурс:

$ openssl s_client -showcerts -connect bash.im:443 < devnull 2>/devnull | sed -n -e '/ 0 s:/ s/.*CN=\(.*\)/\1/p'
app42.lolwut.it
> SELECT substr(utl_http.request('https://bash.im', NULL, 'file:/home/oracle/last_used_wallet', 'pwdtst123',https_host=>'app42.lolwut.it'),1,50) r FROM dual;
 
R
-------------------------------------------------------
<!doctype html>
<html id="godtier">
<head>
        <title

Как обойти ограничение на скачивание с Google Диска

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

Для этого вам нужно сначала сохранить копию в своей учетной записи на Google Диске. 

1. Убедитесь, что вы уже вошли в свою учетную запись Google Диска. 

2. Выберите ссылку на общий файл Google Диска, который вы хотите загрузить.

Если вы уже вошли в свою учетную запись Google, это откроет копию файла внутри вашей учетной записи. Вы увидите статус в верхней части этого сообщения о том, что копия была добавлена ​​в вашу учетную запись. Однако не всегда очевидно, где хранилась эта копия.

3. Сохраните копию файла в папке Google Диска, которую вы предпочитаете, выбрав «Файл» -> «Создать копию».

4. Перейдите к папке, в которой вы хотите сохранить копию, и выберите ее. Нажмите кнопку Выбрать, чтобы выбрать его. Затем нажмите ОК, чтобы закончить. 

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

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

Управление ресурсами

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

Oracle предлагает мощный инструмент — Database Resource Manager (Диспетчер ресурсов базы данных), — который позволяет точно управлять использованием ресурсов базы данных.

Для управления использованием ресурсов в базе данных можно применять профили пользователей, описанные в предыдущем разделе, или Database Resource Manager. Профили пользователей эффективны при управлении использованием ресурсов отдельными пользователями, но специалисты Oracle предпочитают применять профили в основном только для управления паролями. Управлять использованием ресурсов в Oracle рекомендуют с помощью Database Resource Manager.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: