Quite a while, when you restart a Managed Server in WebLogic Console, the server state instead of changing from <STARTING> to <RUNNING> goes to <ADMIN> state. So, what happens is you will face a downtime and it will affect the whole deployment process. The Managed server is not able to handle operational requests in ADMIN mode.
What is the reason behind WebLogic Managed server in ADMIN state?
There are various reasons for a Managed Server to change state to ADMIN. But it usually happens when the Managed Server is unable to activate some modules that are deployed on this particular server.
The most probable reason for a WebLogic Server in ADMIN state is because the Database is down and WebLogic tries to create a connection pool to this data source.
How to change it to <RUNNING>?
Well, you need to know the exact reason first. You will have to diagnose the server logs and find out why the server is not able to change its state to running. Now, if you are facing the issue because the data source is down, you will have to UP your database and restart it.
In case you want to keep the database down, you can just simply "resume" the Managed Server and it will be in RUNNING state.
There is another way where you won't need to manually resume the server whenever it's in Admin mode. You can set the InitialCapacity of the DataSource to 0 (ZERO). WebLogic will not try to create any JDBC connection object at the start up and you won't face the connection issue, ultimately avoiding the server to going to ADMIN state.
This is what the server log looks like (for me when one of the server was in Admin state)
Related cause: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [applicationContext-abc-persistence.xml]: Invocation of init method failed; nested exception is javax.naming.NameNotFoundException: Unable to resolve 'omx.jndi.jdbc.abcdef'. Resolved 'abcd.jndi.jdbc'; remaining name 'abcd'
You can clearly figure out from the codes that the error is due to datasource not defined. So follow the above methods of resuming when you are sure you don't need a datasource connection or either by InitialCapacity of the DataSource to 0.