Как создать пользователя в Oracle SQL Developer

Обновлено: 15.05.2024

Базы данных Oracle поставляются с несколькими встроенными пользователями: SYS и SYSTEM.

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

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

В этой статье я покажу вам, как это сделать. К концу статьи у вас будет новый пользователь с таблицей и некоторыми данными в ней.

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

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

  1. Войдите в систему как администратор (например, SYS или SYSTEM)
  2. Создайте нового пользователя с паролем
  3. Предоставьте ему права на создание сеанса, создание таблицы, неограниченное табличное пространство.

Давайте разбираться.

Подключиться как SYS или SYSTEM

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

Для этого примера у меня есть база данных Oracle, настроенная с помощью Docker, но вы можете использовать любой метод доступа к базе данных:

  • Oracle Express для Windows (руководство)
  • База данных Oracle в Windows
  • База данных Oracle на виртуальной машине в Windows или Mac (руководство)
  • База данных Oracle в облаке на Windows или Mac

Шаг 1. Подключитесь к базе данных как SYS или SYSTEM.

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

 создать новую вкладку пользователя 01

Шаг 2. Создайте нового пользователя с помощью команды "Создать пользователя".

Команда для создания нового пользователя — «Создать пользователя».

Синтаксис выглядит следующим образом:

Вы заменяете имя пользователя на имя пользователя, которое хотите создать, и пароль на пароль для этого нового пользователя.

Например, чтобы создать нового пользователя с именем james и паролем somepassword:

Пароль может содержать буквы, цифры и большинство специальных символов.

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

Допустим, мы запустили команду для создания пользователя с паролем «somepassword». Вы должны увидеть этот вывод:

Подключиться как новый пользователь

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

Шаг 3. Подключитесь как новый пользователь (в SQL Developer или командной строке).

Если вы используете SQL*Plus или sqlcl, вы можете подключиться с помощью команды «conn»:

В этой статье я использую SQL Developer, поэтому я создам новое соединение с именем пользователя и паролем.

создать пользователя 02 соединение

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

При проверке соединения я получаю сообщение об ошибке:

создать пользователя 03 ошибка

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

Это легко изменить!

Предоставить права

Шаг 4. Повторно подключитесь как системный пользователь

Нам нужно снова вернуться к пользователю SYSTEM (или SYS), чтобы предоставить разрешения. Итак, подключитесь как этот пользователь, как на шаге 1.

Шаг 5. Предоставьте права новому пользователю

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

Это можно сделать одним из двух способов:

  • Предоставление пользователю роли CONNECT
  • Предоставление пользователю права CREATE SESSION

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

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

Итак, запустите любую из этих команд:

Или, чтобы выделить сеанс создания напрямую:

Давайте запустим команду. Вы должны увидеть этот вывод:

Снова подключиться как новый пользователь

Шаг 6. Повторно подключитесь как новый пользователь

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

Откройте новое подключение в SQL Developer и проверьте его или подключитесь к нему. Вы должны успешно подключиться и увидеть открытую новую вкладку.

Шаг 7. Создайте новую таблицу

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

Выполните эту команду, чтобы создать простую таблицу:

Когда вы попытаетесь запустить его, вы получите следующую ошибку:

Ошибка, начинающаяся со строки: 1 в команде –
CREATE TABLE newtable (
testvalue NUMBER(4)
)
Отчет об ошибке –
ORA-01031: недостаточно привилегии
01031 00000 — «недостаточно привилегий»
*Причина: Предпринята попытка выполнить операцию с базой данных без
необходимых привилегий.
*Действие: попросите администратора базы данных или назначенного
администратора безопасности предоставить вам необходимые права

Как мы можем это исправить?

Мы можем вернуться к пользователю SYSTEM или SYS и предоставить больше прав.

Предоставить права доступа к таблице

Шаг 8. Подключитесь как пользователь SYSTEM или SYS.

Еще раз подключитесь к пользователю SYSTEM или SYS.

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

Шаг 9. Предоставьте права доступа к таблице.

Нам нужно предоставить пару привилегий новому пользователю:

  • Создать таблицу, чтобы мы могли создать таблицу
  • Неограниченное табличное пространство, поэтому таблицу нужно где-то хранить

Мы можем сделать это с помощью следующих команд:

Или мы можем объединить предоставление нескольких привилегий в один оператор:

Выполните любую из этих команд, и ваш новый пользователь должен получить эти новые привилегии. Вы должны увидеть этот вывод:

Создать таблицу как новый пользователь

Теперь вернемся к новому пользователю и попробуем создать и заполнить новую таблицу.

Шаг 10. Подключитесь как новый пользователь

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

Шаг 11. Создайте новую таблицу

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

Вывод должен быть:

Шаг 12. Вставьте данные

Давайте вставим некоторые данные в новую таблицу, чтобы протестировать ее.

Вы должны получить следующий результат:

Шаг 13. Выберите из таблицы.

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

Вот результат:

ТЕСТЗНАЧЕНИЕ
1

Отлично! Новый пользователь может создавать таблицы, вставлять данные и выполнять запросы SELECT.

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

Заключение

Вот как вы создаете нового пользователя в Oracle.

Вы запускаете команду "Создать пользователя". Затем вы предоставляете пару привилегий для подключения и создания таблиц.

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

Оставить комментарий Отменить ответ

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

Прежде чем начать

В этом 15-минутном учебном пособии показано, как создать учетную запись пользователя Data Miner и подключение SQL Developer с помощью подключаемой базы данных (PDB).

Фон

Oracle SQL Developer — это клиент программного обеспечения Oracle Database. Для доступа к таблицам базы данных Oracle и использования Oracle Data Miner требуется учетная запись пользователя Oracle SQL Developer.

Что вам нужно?

Создайте учетную запись пользователя в подключаемой базе данных

В вашем экземпляре Oracle Database 19c должен быть хотя бы один экземпляр подключаемой базы данных (PDB). Вы будете использовать учетную запись с соответствующими разрешениями для создания учетной записи пользователя для своей учетной записи пользователя Data Miner.

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

  1. Откройте Разработчик SQL.
  2. Нажмите правой кнопкой мыши на свой аккаунт пользователя PDB sys и выберите Подключиться.
  3. На вкладке "Соединения с разработчиком SQL" разверните соединение.
  4. Нажмите правой кнопкой мыши узел "Другие пользователи" и выберите "Создать пользователя" во всплывающем меню.
  5. В окне «Создать пользователя» выберите вкладку «Пользователь» и укажите имя пользователя, пароль, табличное пространство по умолчанию и временное табличное пространство для учетной записи пользователя. Используйте следующие параметры:
    • Имя пользователя: DMUSER
      Примечание. Необходимо использовать имя пользователя в верхнем регистре.
    • Пароль. Создайте пароль по своему выбору (он должен состоять не менее чем из 9 символов и содержать два символа верхнего регистра).
  6. Перейдите на вкладку "Предоставленные роли" и установите флажок в столбце "Предоставленные" для ПОДКЛЮЧЕНИЯ.
  7. Перейдите на вкладку Quotas и установите флажок, чтобы установить для табличного пространства USERS по умолчанию значение Unlimited.
  8. Нажмите «Применить», чтобы создать учетную запись. Затем нажмите "ОК" в появившемся окне "Успешно".

Создать подключение разработчика SQL для пользователя Data Miner

Это подключение можно создать либо с помощью вкладки "Подключения SQL Developer", либо с помощью вкладки Data Miner. В любом случае появится одно и то же диалоговое окно New/Edit Database Connection. Все сохраненные соединения SQL Developer отображаются на обеих вкладках.

Описание файла create-dmuser-connection.jpg

  1. На вкладке "Подключения SQL Developer" щелкните правой кнопкой мыши "Подключения" и выберите "Новое подключение" во всплывающем меню.
  2. В диалоговом окне "Создать/выбрать подключение к базе данных" введите следующие параметры:
    • Имя подключения: PDB1-DMUSER
    • Пароль: выбранный вами пароль
    • Проверьте пароль для сохранения
    • Тип подключения: обычный
    • Имя хоста: имя хоста вашего сервера базы данных (localhost, если база данных установлена ​​на вашем ПК, или IP-адрес, если он удален).
    • Порт: введите соответствующий номер порта (по умолчанию – 1521).
    • Имя службы. Имя службы для вашей PDB, например orclpdb1.example.com.
  3. Нажмите "Тест", чтобы проверить подключение. Если соединение установлено успешно, статус (прямо над кнопкой «Справка») меняется на «Успешно». Затем нажмите Подключиться, чтобы сохранить подключение, а также установить подключение к базе данных. Описание иллюстрации create-dmuser-connection.jpg
  4. Следующее руководство

    В следующем руководстве вы установите репозиторий образцов данных Data Miner.

    Вывод: в этом руководстве вы узнаете, как использовать оператор Oracle CREATE USER для создания нового пользователя в базе данных Oracle.

    Введение в оператор Oracle CREATE USER

    Команда CREATE USER позволяет создать нового пользователя базы данных, которого можно использовать для входа в базу данных Oracle.

    Основной синтаксис оператора CREATE USER следующий:

    СОЗДАТЬ имя пользователя ПОЛЬЗОВАТЕЛЯ

    Укажите имя создаваемого пользователя.

    ОПРЕДЕЛЯЕТСЯ ПО ПАРОЛЮ

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

    ТАБЛИЧНОЕ ПРОСТРАНСТВО ПО УМОЛЧАНИЮ

    Укажите табличное пространство объектов, таких как таблицы и представления, которые создаст пользователь.

    Если вы пропустите это предложение, объекты пользователя будут храниться в табличном пространстве базы данных по умолчанию, если оно доступно, обычно это табличное пространство USERS; или табличное пространство SYSTEM, если в базе данных нет табличного пространства по умолчанию.

    КВОТА

    Укажите максимальное пространство в табличном пространстве, которое может использовать пользователь. У вас может быть несколько предложений QUOTA, каждое для табличного пространства.

    Используйте UNLIMITED, если вы не хотите ограничивать размер табличного пространства, которое может использовать пользователь.

    ПРОФИЛЬ профиля

    Профиль пользователя ограничивает ресурсы базы данных или пароль, который пользователь не может превысить. Вы можете назначить профиль вновь созданному пользователю. Если вы пропустите это предложение, Oracle назначит пользователю профиль ПО УМОЛЧАНИЮ.

    Срок действия ПАРОЛЯ ИСЧЕЗ

    Используйте PASSWORD EXPIRE, если вы хотите заставить пользователя сменить пароль при первом входе пользователя в базу данных.

    УЧЕТНАЯ ЗАПИСЬ

    Используйте БЛОКИРОВКУ АККАУНТА, если хотите заблокировать пользователя и отключить доступ. С другой стороны, укажите РАЗБЛОКИРОВАТЬ АККАУНТ, чтобы разблокировать пользователя и разрешить доступ.

    Чтобы выполнить оператор CREATE USER, вы должны иметь системную привилегию CREATE USER. Как только вы создадите нового пользователя, домен привилегий пользователя будет пуст. Поэтому, если вы хотите, чтобы пользователь мог войти в базу данных, вы должны предоставить ему системную привилегию CREATE SESSION.

    Примеры Oracle CREATE USER

    Давайте потренируемся с оператором CREATE USER.

    1) Пример использования инструкции Oracle CREATE USER для создания нового локального пользователя

    В этом примере оператор CREATE USER используется для создания нового локального пользователя с именем john и паролем abcd1234:

    Oracle выдает следующий вывод, указывающий, что пользователь john успешно создан.

    Чтобы найти список пользователей со статусом OPEN, вы запрашиваете информацию из dba_users :

    Oracle CREATE Пример USER

    Как видно из вывода, пользователь john имеет табличное пространство по умолчанию как USERS , профиль как DEFAULT и входит в базу данных, используя ПАРОЛЬ .

    Давайте воспользуемся учетной записью john для входа в базу данных.

    Запустите программу SQL*Plus и введите следующую информацию:

    Oracle выдал следующую ошибку:

    Чтобы позволить пользователю john войти в систему, вам необходимо предоставить системную привилегию CREATE SESSION пользователю john с помощью следующего оператора:

    Теперь пользователь john должен иметь возможность войти в базу данных.

    2) Использование инструкции Oracle CREATE USER для создания нового локального пользователя с просроченным паролем, пример

    Сначала используйте оператор CREATE USER, чтобы создать нового пользователя jane:

    Во-вторых, проверьте, успешно ли создан пользователь:

    Oracle CREATE USER с паролем, срок действия которого истек, пример

    В-третьих, предоставьте привилегию CREATE SESSION пользователю jane, чтобы вы могли использовать этого пользователя для входа в базу данных Oracle.

    Наконец, используйте пользователя jane для входа в базу данных через программу SQL*plus:

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

    В этом руководстве вы узнали, как использовать оператор Oracle CREATE USER для создания нового пользователя в базе данных Oracle.

    В этом руководстве мы узнаем, как создать нового пользователя и подключение в SQL Developer. Мы также узнаем, как разблокировать учетную запись отдела кадров, и узнаем больше о схеме отдела кадров.

    Эта статья разделена на 3 части:

    1. Создать новое подключение для пользователя SYS
    2. Создать новое подключение для пользователя отдела кадров.
    3. Создать нового пользователя и подключение в SQL Developer

    Создать новое подключение к базе данных для пользователя SYS

    Это первое, что нам нужно сделать после установки SQL Developer.

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

    Когда мы устанавливаем базу данных Oracle, она поставляется с некоторыми предопределенными пользователями, такими как STS, SCOTT, SYSTEM, HR и т. д. Пользователь SYS имеет все административные привилегии. Мы входим в базу данных под этим пользователем только тогда, когда нам нужно выполнить административные задачи.

    Поскольку пользователи SYS и SYSTEM уже созданы при установке Oracle Database, нам просто нужно создать подключение в SQL Developer для подключения к базе данных.

    Шаг 1. Откройте окно нового подключения

    Нажмите значок «Зеленый плюс» в разделе «Подключения» слева, чтобы открыть окно «Новое подключение». Откроется этот экран.

     Создать новое соединение в SQL Developer

    • Имя пользователя — SYS, а пароль — то, что вы указали во время установки базы данных Oracle. В нашем случае
    • Имя — Система (Вы можете указать любое имя, но мы даем его как Система для быстрого ознакомления)
    • имя пользователя – SYS
    • пароль-система
    • Роль — SYSDBA
    • Тип подключения – базовый

    Шаг 2. Проверьте имя хоста, порт и SID в файле tsnames.ora

    Имя хоста, порт и SID можно проверить в файле tsnames.ora в каталоге установки Oracle.

    Путь к этому файлу на моей машине >>

    Вы также можете найти это в каталоге установки Oracle.

    Откройте этот файл в Notepad++ или любом другом текстовом редакторе, и вы получите имя хоста, порт и SID. Используйте эту информацию при создании любого нового пользователя или подключения в SQL Developer. В большинстве случаев это значение по умолчанию, но в некоторых случаях SID может отличаться

     Проверьте порт имени хоста и SID в файле tsnames.ora

    После этого нажмите «Проверить», а затем «Сохранить», чтобы создать новое подключение к базе данных для пользователя SYS в SQL Developer.

    Создать новое подключение к базе данных для пользователя отдела кадров

    HR — это другой предопределенный пользователь, который входит в схему HR. Схема HR состоит из некоторых таблиц базы данных, которые мы используем для обучения оракула. Эти таблицы обычно используются для изучения Oracle, и мы выполняем все SQL-запросы на этих учебных таблицах.

    Как и пользователь SYS, пользователь HR автоматически создается при установке Oracle Database. Нам просто нужно создать новое подключение для этого пользователя HR в SQL Developer.

    Шаг 1. Откройте новое окно подключения в SQL Developer

    Как и раньше, нажмите на значок "Зеленый плюс" под подключениями, чтобы открыть окно "Новое подключение".

    Введите следующую информацию:

    • Имя – ч
    • имя пользователя -hr
    • пароль -hr
    • Роль — по умолчанию
    • Тип подключения – базовый

    Имя хоста, порт и SID совпадают с теми, которые мы использовали при создании подключения пользователя SYS. Вы также можете проверить это в файле tsnames.ora.

    Ошибка блокировки учетной записи

    Как видите, мы получили сообщение об ошибке ORA-28000, говорящее о том, что учетная запись заблокирована. Это происходит потому, что иногда мы забываем разблокировать эти учетные записи во время установки базы данных Oracle. Мы можем разблокировать эту учетную запись, написав простой двухстрочный SQL-запрос.

    Шаг 2. Разблокируйте учетную запись отдела кадров в SQL Developer

    Для этого мы используем инструмент командной строки SQL. Просто найдите инструмент командной строки SQL в меню «Пуск», так как этот инструмент также устанавливается при установке базы данных Oracle.

    SQL Developer — это инструмент с графическим интерфейсом пользователя, который позволяет нам работать с базой данных, используя только нашу мышь, и мы можем просматривать и редактировать данные в таблицах, как мы это делаем в Excel. Но инструмент командной строки SQL используется только для написания запросов и не предлагает никакого графического интерфейса для взаимодействия с данными в базе данных.

    Давайте воспользуемся инструментом командной строки SQL, чтобы написать эти 2 запроса один за другим

    подключить систему/систему как sysdba;

    изменить пользователя hr, идентифицированного при разблокировке учетной записи hr;

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

    Вторая строка используется для изменения учетной записи пользователя hr и указания Oracle разблокировать ее.

    Разблокировка учетной записи пользователя HR

    Пользователь изменен.

    Шаг 3. Создайте подключение отдела кадров в SQL Developer

    Повторите шаг 1, и на этот раз, как вы видите, все получилось.

    Нажмите «Проверить» > «Сохранить», а затем войдите в эту учетную запись с помощью

     Создать учетную запись отдела кадров SQL Developer

    Схема управления персоналом

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

    Как мы уже видели, SYS, SCOTT, SYSTEM, HR — это некоторые из пользователей, которые создаются во время установки Oracle Database. У каждого пользователя есть собственная схема или связанные с ним реляционные объекты.

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

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

    Создать схему HR

    Создать нового пользователя и подключение

    Системы SYS и HR были предустановленными пользователями. Давайте посмотрим, как создать нового пользователя с помощью SQL Developer.

    Шаг 1. Войдите в учетную запись SYS и создайте нового пользователя

    Для создания нового пользователя нам необходимо войти в учетную запись SYS, используя имя пользователя и пароль.

    Здесь у нас есть возможность просто написать запрос для создания нового пользователя или использовать интерфейс SQL Developer для создания нового пользователя.

    Шаг 2. Откройте схему пользователя SYS и выберите > Другие пользователи > Создать пользователя

    Open SYS Схема пользователя для создания нового пользователя

    Шаг 3. Укажите имя пользователя и пароль

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

    • Табличное пространство по умолчанию — Пользователи
    • Временное табличное пространство — Temp

    Шаг 4. Предоставление прав

    Предоставьте этому новому пользователю привилегии Connect, DBA и Resource.

    Предоставление ролей и привилегий новому пользователю» width=

    Шаг 5. Предоставление квоты для табличного пространства

    Предоставить квоту для табличного пространства

    Нажмите «Применить», и новый пользователь будет создан.

    Создан новый пользователь

    Шаг 6. Создайте новое подключение для этого нового пользователя

    Создать новый Соединение

    Give Username Пароль

    Альтернативный метод создания нового пользователя

    Мы также можем создать нового пользователя и соединение, используя несколько простых запросов.

    Шаг 1:

    Давайте создадим пользователя напрямую, используя SQL-запросы, войдя в учетную запись пользователя SYS.

    СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ «obama» с именем «obama»;

    SQL-запрос для создания нового пользователя

    Шаг 2:

    Введите этот запрос, чтобы проверить, соответствует ли статус учетной записи. Если он заблокирован, мы можем получить ошибку. Замените имя пользователя на имя пользователя, которое вы дали.

    SELECT * FROM dba_users WHERE username =’obama’;

    SQL-запрос для проверки информации о состоянии учетной записи

    Шаг 3:

    Создайте новое подключение, нажав на зеленый знак плюса в SQL Developer.

    Пользовательские недостатки Привилегии 01045 Ошибка Oracle

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

    Шаг 4:

    Давайте предоставим все права новому пользователю:

    предоставить привилегии Обаме;

     Предоставить привилегии новому пользователю

    Наконец мы создали нового пользователя и подключение.

    Give Username Пароль

    Давайте проверим, все ли работает нормально, написав один простой запрос после входа в новую учетную запись пользователя, которую мы только что создали:

    Все работает нормально.

    В этом руководстве мы узнали, как создать нового пользователя и подключение в SQL Developer.

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

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

    Создание пользователя

    После подключения как SYSTEM просто введите команду CREATE USER, чтобы создать новую учетную запись.

    Здесь мы просто создаем учетную запись books_admin, которая ИДЕНТИФИЦИРОВАНА или аутентифицирована с помощью указанного пароля.

    Заявление о гранте

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

    Предоставление ролей

    Как правило, сначала нужно назначить права пользователю, привязав учетную запись к различным ролям, начиная с роли CONNECT:

    В некоторых случаях, чтобы создать более мощного пользователя, вы также можете рассмотреть возможность добавления роли RESOURCE (позволяющей пользователю создавать именованные типы для пользовательских схем) или даже роли DBA, которая позволяет пользователю не только создавать пользовательские именованные типы но также изменить и уничтожить их.

    Назначение прав

    Далее вам нужно убедиться, что у пользователя есть права на фактическое подключение к базе данных и создание сеанса с помощью GRANT CREATE SESSION . Мы также объединим это со всеми привилегиями, используя GRANT ANY PRIVILEGE .

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

    Права доступа к таблице

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

    Например, если мы хотим, чтобы наш пользователь books_admin имел возможность выполнять функции SELECT , UPDATE , INSERT и DELETE для таблицы books, мы можем выполнить следующую инструкцию GRANT:

    Это гарантирует, что books_admin сможет выполнять четыре основных оператора для таблицы books, которая является частью схемы схемы.

    Читайте также: