Oracle 12c подключаемая БД по умолчанию в sqlplus
У меня есть подключаемая база данных в Oracle 12c с именем PDBORCL. После перезапуска сервера что-то изменилось в том, как к нему подключиться.
Я создал пользователя в этой подключаемой БД, например, пользователь PETER и пароль также PETER. До перезапуска я имел обыкновение открывать командную строку, запускать sqlplus, который, в свою очередь, запрашивал мое имя пользователя и затем его пароль, и он входил в систему. Теперь это не работает, он говорит неверное имя пользователя / пароль. Когда я вхожу с SYS и проверяю:
SELECT * FROM dba_users WHERE username = 'PETER';
Я не получаю результатов.
Тем не менее, если я вхожу с использованием следующего из командной строки, это работает:
sqlplus PETER/PETER@PDBORCL
Итак, БД запущена и работает, но, похоже, по умолчанию она подключается к неверной подключаемой БД. Мне нужно изменить его так, как это было до перезапуска, чтобы он по умолчанию подключался к этой конкретной подключаемой БД.
Как мне этого добиться?
2 ответа
Я нашел решение. Измените или создайте переменную среды LOCAL (в Windows) на PDBORCL. Я думаю, что я прочитал в Linux, переменная TWO_TASK. После его изменения работает следующее:
sqlplus PETER/PETER
Также работает простой вызов sqlplus и ожидание запроса имени пользователя и пароля.
Вы создали пользователя в pluggableDB, и этот пользователь не виден за пределами подключаемой БД, поэтому вы не видите пользователя PETER при выполнении вышеуказанного запроса как sys. Если вы хотите подключиться к подключаемой БД напрямую, то, что вы сделали выше, это В противном случае вы можете подключиться к sys и использовать команду CONNECT.