How to /as sysdba to db running on Docker? - oracle

I have an Oracle database that is running on Docker and a password from my user is going to be expired.
I tried alter profile <profile_name> limit password_life_time UNLIMITED; but got ORA-01031: insufficient privileges
AFAIK, in order to succesfully execute alter profile <profile_name> limit password_life_time UNLIMITED; I have to log in /as sysdba
Could you please give me a hint how can I workaround it in my case? Is it possible to connect /as sysdba in my case?

Just update their password.
ALTER USER EXPIRING_SOON IDENTIFIED BY NEW_PASSWORD;
This will reset the expiration window for the user.
To login as SYS w/o a password, open a terminal for your docker container, and run SQL*Plus from there.

Related

Connect Sys as Sysdba : Insufficient privileges

I'm trying to connect to an Oracle database using SQL Developper as Sys DBA but I'm receiving the error : ORA 1031 : Insufficient Privileges.
I'm sure the password is correct because I'm able to connect to the same database using SQLPlus :
Does anyone know how to solve that please ?
Thanks
change role to be sysdba instead of default in sqldeveloper
Check if the parameter REMOTE_LOGIN_PASSWORDFILE is set to exclusive. This is necessary to login AS SYSDBA from SQL developer :
SQL> show parameter remote_login_passwordfile
To change it :
SQL> ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=SPFILE;
Role(par defaut) - role(sysdba) or sysoper

I can't login to oracle system account

I recently installed oracle 12c and can't access the system local generated connection. (Ora-01017 error) eventhough I know for a fact its correct because I changed the password. Anyway, someone else on stackoverflow redirected me to this https://iwikte.wordpress.com/2008/11/28/unlock-oracle-system-account/, and I don't know how to set up these environment variables. I need help. If it makes any difference i'm using windows 10.
If these environment variables are not set automatically, do it manually
(export ORACLE_HOME=/opt/oracle/VIS/db/tech_st/10.2.0
export ORACLE_SID=VIS
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin)
Please first try without setting variables.
Please run SQLPlus as administrator and connect as sysdba without giving password. If your variables are set properly you can just type sqlplus in cmd if not please find SqlPlus in your programs. Then type:
conn / as sysdba
If that won't. Please go to your ORACLE HOME directory and edit %ORACLE_HOME%\network\admin\sqlnet.ora file and check if there is SQLNET.AUTHENTICATION_SERVICES = (NTS) if not NTS change to NTS and restart database. Then retry with conn / as sysdba
When connected you can just call:
alter user sys identified by YOUR_NEW_PASS; or for SYSTEM user alter user SYSTEM identified by YOUR_NEW_PASS account unlock; and login with new password.
By the way why do you need to log as SYSTEM? Not just sys as sysdba? Some comparison about system accounts.
The instruction you got is for linux. In Windows one set environmental variables like shown here
from oracle version 12.2.x users cannot login using case insensitive passwords, even though SEC_CASE_SENSITIVE_LOGON = FALSE if PASSWORD_VERSIONS of user is not 10g.
following sql should show the PASSWORD_VERSIONS for a user.
select USERNAME,ACCOUNT_STATUS,PASSWORD_VERSIONS from dba_users;
USERNAME ACCOUNT_STATUS PASSWORD_VERSIONS
--------------- -------------- -----------------
dummyuser OPEN 11G 12C
to make PASSWORD_VERSIONS compatible with 10g
add/modify line in sqlnet.ora of database to have SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
restart database
change/expire password for existing user
new users created will also have same settings
after above steps PASSWORD_VERSIONS should be something like this
select USERNAME,ACCOUNT_STATUS,PASSWORD_VERSIONS from dba_users;
USERNAME ACCOUNT_STATUS PASSWORD_VERSIONS
--------------- -------------- -----------------
dummyuser OPEN 10G 11G 12C

How to set sysdba password in Oracle 11G

I tried to connect to database using sqlplus using below command :
sqlplus / as sysdba
I have used the same password that I had set while creating database and setting password for sys and sysdba. But it shows below error :
ORA-01017: invalid username/password; logon denied
How to connect to the database?
I have installed Oracle DB in local PC with Windows 10 as Operating System and administrator privileges.
Log on to your Windows server as a member of the Administrators group or a member of the ORA_DBA group.
Try the below steps
sqlplus /nolog
connect / as sysdba
Once connected, you can change the SYS password to something you know:
ALTER USER sys IDENTIFIED BY new_password;

Unable to log in to database as SYS with Oracle SQL Developer

I've worked with Oracle for some time but very much a noob with the Admin side of things and am learning, so bear with me.
I cannot log on to my database (orcl_test) with SQL Developer with the SYS username. I can log on just fine in SQLPlus with SYS as SYSDBA - when I try with SQL Developer I get an error:
ORA-01017: invalid username/password; logon denied.
Logging on as SYS as SYSDBA in SQLPlus, I created a test table within the database and granted the test user SCOTT with SELECT permissions. The Scott user can log on through SQL Developer w/o problem and access the allowed tables.
I have checked that the Scott user and SYS are logging in using the same settings -
Hostname: (ip address)
Port: 1521
SID: orcl_test
For SYS I flag the role SYSDBA - but otherwise the settings are the same.
Any thoughts on why I can't log on using SYS? Am I just overlooking something or have I configured my db incorrectly?
Not sure if this is relevant but I cannot use 'localhost' for the hostname, I have to enter the IP address. Where do I configure Oracle to recognize localhost?
This is a new installation of Oracle 11.2.0.1.0 on a standalone test box running Windows XP. Running Oracle SQL Developer 1.5.5.
From the The SYSDBA System Privilege and (Logging In and Connecting to the Database as SYSDBA:
1--Connecting AS SYSDBA invokes the SYSDBA privilege. If you omit the AS
SYSDBA clause when logging in as user SYS, the SQL Command Line
rejects the login attempt.
2--Using SQL Developer, open a database connection to the SYS user AS SYSDBA.
So - if this works for you:
sqlplus sys/Oracle_1#pdborcl as sysdba;
Try: "SYS AS SYSDBA" as below:
Alternatively:
you can type in: "SYS" and select from dropdown-menu ROLE: SYSDBA.
If I understand correctly the database is on the same host as the SQL Developer installation? Are you fully qualifying the connection when testing with SQLPlus:
sqlplus "sys/password#database as sysdba"
It may be the case that the error is correct. Make sure you've created a password file.
The sys password that you are using is not valid.
But because you are connecting to oracle by command on an Oracle machine, Oracle does not check your password even though your password is not right.
Just change the sys password and try again.
su - oracle
orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=Euro2016 entries=5
which means: write to a file $ORACLE_HOME/dbs/orapw$ORACLE_SID a password Euro2016 which is used by SYSDBA
Now you can connect with sqldeveloper: username sys, password Euro2016 with chosen SYSDBA , hostname, port, sid from $ORACLE_SID

cant connect to oracle - ora-01017

i installed Oracle 11.2.0 64bit & Oracle SQL developer 2.1.1.64 on Windows-7 64bit
i try to connect to database like this:
username: scott
password: tiger
role : sysdba
hostname: localhost
port : 1521
sid : ORCL
and i got this error: ora-01017 invalid username/password; logon denied
what can be the problem ? what to check ?
thanks in advance
11g allows for case-sensitive passwords, so firstly check the password TIGER (and maybe Tiger)
since the database is on your local machine, easiest is to connect to it using os authentication and reset the password to a known value and then use that to connect using the tool you want. On windows you can do this in the *nix style. First find where your oracle rdbms installation is located and assign that value to the ORACLE_HOME environment variable. Use the commandline tool.
ORACLE_HOME=d:\somwehere\on\your\disk
PATH=%ORACLE_HOME%\bin
ORACLE_SID=ORCL
sqlplus "/ as sysdba"
alter user scott identified by koffie;
(make sure you remember the password this time, including case as since 11g passwords are case sensitive.) sqlplus should be in %ORACLE_HOME%\bin. Check this before.
I hope this helps.
Is the account unlocked? As a privileged (SYS account) try running:
SELECT USERNAME, ACCOUNT_STATUS
FROM DBA_USERS
WHERE USERNAME = 'SCOTT';
If the account is locked, try:
ALTER USER SCOTT ACCOUNT UNLOCK;
Also it appears you are trying to connect to the database as SYSDBA using the SCOTT account. I believe by default this schema lacks the necessary account privileges. Try logging in as SCOTT/TIGER connecting as "normal", not "sysdba".
-CJ
Use:
orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=Euro2016 entries=5
grant sysdba to scott;
Now you can connect...

Resources