Продолжаем работать с SQL Plus! Попробуем сделать следующее, войти пользователем SYSTEM с паролем manager, а затем не закрывая плюс сменим действующего пользователя.
Запускаем плюс, вводим пользователя, пароль и название сетевой службы (proba! или что-то еще!), получилось? Замечательно! Теперь проделаем примерно следующее:
SQL> CONNECT SCOTT/TIGER@PROBA Соединено. SQL>
Команда CONNECT производит подключение к серверу требуемой схемы(пользователя) в соответствии с заданной строкой соединения! Вот так:
USER/PASSWORD@NETWORKSERVICE
В предыдущем случае мы зашли в схему(пользователя) SCOTT с паролем доступа TIGER с помощью сетевой службы PROBA. Берите сразу на заметку или на память: в Oracle Server в паролях доступа не допускаются цифровые символы! Так же созданный пользователь, создает схему в экземпляре БД и понятие схема и пользователь в Oracle практически тождественны! Сама строка подключения, вами еще не однократно, будет использоваться в дальнейшем! Теперь, я думаю пришло время, создать собственную схему, тем более она нам понадобиться, в дальнейшем, для того, что бы научиться использовать PL/SQL! Первое и самое простое, действие, для создания нашей схемы, ввести следующее:
SQL> CONNECT SYSTEM/MANAGER@PROBA Соединено.
Для начала заходим на сервер, как администратор!!!
Вводим ниже приведенную строку, которая создает пользователя MILLER с паролем в системе KOLOBOK (можете написать свое!), который будет жить в табличном пространстве USER владея им целиком и захватив в свое распоряжение еще кусочек табличного пространства TEMP, так на всякий случай, пригодится!!!
SQL> CREATE USER MILLER IDENTIFIED BY KOLOBOK DEFAULT TABLESPACE USERS 2 QUOTA UNLIMITED ON USERS QUOTA 2M ON TEMP 3 / Пользователь создан.
После нажатия Enter на последней строке видим, что все прошло удачно!
Но, это только полдела, теперь этому пользователю, нужно, дать ряд прав и первостепенное, это создавать сессию с сервером! Теперь введем нижеследующее: Можно по очереди или целиком! Главное, чтобы сработал последний опреатор COMMIT!!! Иначе наши старания пройдут бесследно!
GRANT CREATE SESSION TO MILLER / GRANT CREATE TABLE TO MILLER / GRANT CREATE PROCEDURE TO MILLER / GRANT CREATE TRIGGER TO MILLER / GRANT CREATE VIEW TO MILLER / GRANT CREATE SEQUENCE TO MILLER / GRANT CREATE VIEW TO MILLER / GRANT DELETE ANY TABLE TO MILLER / GRANT DROP ANY TABLE TO MILLER / GRANT DROP ANY PROCEDURE TO MILLER / GRANT DROP ANY TRIGGER TO MILLER / GRANT DROP ANY VIEW TO MILLER / GRANT ALTER ANY TABLE TO MILLER / GRANT ALTER ANY TABLE TO MILLER / GRANT ALTER ANY PROCEDURE TO MILLER / GRANT ALTER ANY TRIGGER TO MILLER / COMMIT /
В результате получим кучу сообщений типа: "Привилегии предоставлены."
И последнее: "Фиксация обновлений завершена."
Операторы GRANT предоставляют пользователю, определенные привилегии. В типах привилегий пока, предметно разбираться не будем, скажу только, что данное мероприятие можно проделать еще проще, если собрать все строки, которые мы вводили в файл, затем использовав команду START или операцию "@"! Можете проделать это сами, предварительно введя, находясь в схеме SYSTEM:
SQL> DROP USER MILLER CASCADE 2/ Пользователь удален.
Затем соберите все строки, в файл, скажем CrMiller.sql, поместите его в каталог, например, Temp, и введите следующее:
SQL> @C:\TEMP\CRMILLER.SQL
Выскочит множество надписей, последняя из которых должна быть: "Фиксация обновлений завершена." Значит, все прошло нормально и пользователь создан! Дальше в схеме MILLER, мы развернем, ряд оьбектов БД и посмотрим как это будет происходить!
Так же на заметку в заключении SQL Plus, есть еще много внутренних команд, например, очень полезной может оказаться SET TIME ON приглашение примет вот такой вид:
14:09:52 SQL>
Например, можно оценивать время на запрос из таблицы!
Если ввести SET TIME OFF, то все станет по прежнему. Например, если написать SHOW USER (мне напоминает Cisco IOS!), то увидим примерно следующее:
SQL> SHOW USER USER имеет значение "MILLER"
По ходу дела, мы познакомимся с большинством из них!