Very well done, important not to stop at the 17 minute mark as the subsequent demonstration is very informative and helps to illustrate the previous section.
Hi, why you dont´use opatchauto instead of opatch ? With opatchauto you can patch in a single command both GI home and DB home and will avoid all the manul steps that you are doing
opatchauto is really a great tool. You can use that In case if opatchauoto fails at end moment suppose after 99% of patching completed and if it fails then it will rollback everything. opatchauto can to >>> GI patching >>> DB patching >>> datapatch also
Hi , Nice explanation . Really helpful . 1 query While patching on node 1 , DB is fully running on Node 2 correct ? I mean no need to take application downtime? right ? Please let me know
@@ameetmehta6749if you are applying only PSU patch then no downtime needed, apply patch at binary level on every node of the cluster and then execute datapatch verbose on any one node, no downtime needed. But if you are applying OJVM patch also then after applying PSU +OJVM patches at binary level for every node, you need to stop all db instances change cluster parameter to false, startup only one node in upgrade mode and execute datapatch verbose, here you will need a downtime.
Very nice tutorial, thanks! For 12c I guess that are similar steps. I have to migrate a 12c database, is it correct to install database software on new machines, install patches and after that to restore database with rman? Ty!
Hi mallik, In the first node we can see 3 diff DB running with diff home. To patch DEV DB using rolling fashion , we can use srvctl stop instance... command right to stop the instance on node 1. Is srvctl stop instance & srvctl stop home same or different in this scenario?
Yes we can do that. better you can go with srvctl stop home. If only DBs running on that home means it does not matter you can go with whichever way. Other than DB some services and listener are all running on that home means then you have to go with srvctl stop home.
Thanks Mallik, very informative 🙏🙏 , one quick query do we need to run the Datapatch verbose from all the nodes? Or just running it from one node is fine?
Thank you for the detailed session :) Quick question: For Ex: If a DB_HOME1 has 10 databases, here we are using SRVCTL to STOP/START databases in its original state. Usually DATAPATCH to be run in UPGRADE mode, in the above case how we can start DB in UPGRADE and once patch completed later need to start DB to its original state. Can you please suggest
Only only if you apply OJVM patch then you need to start your database instance in upgrade mode and run the datapatch If you apply PSU you can run the datapatch in open mode.
You have to set cluster_database parameter to false and start only 1 instance in upgrade mode and run the datapatch. After datapatch set cluster_database parameter back to true and start your database using srvctl
Hi Sir, I have applied 19.23 RU to 19.20 to GI home. Post patching crsctl query crs activeversion showing still 19.20. 19.23 patch went without any error. Could you share the work around for this issue?
@@good123gyou can execute datapatch verbose on any one node, datapatch verbose updates the db registry and hence must be executed only on any one node.
Hi Malik, Nice content.. can u share me the notepad with all commands for reference ? One quick question, while patching to DB home, do we need to bring down DB or instance only ?
we need to bring down one instance out of two instance running for the database then we can apply the patch at binary level for one instance then start instance one and then go to second node stop instance second and apply the patch to binary of 2nd instance and then start second instance ,, to apply the patch at database level using datapatch we can apply data patch when both the instance are running and up. Datapatch can be applied to only one instance
Yes if you have multiple databases running on each node of the RAC, every db instance for which you have executed apply patch , datapatch verbose has to be executed on any one node, it will update the patch registry at database level.
I think no, because after ojvm, we have to shutdown all instances, change cluster parameter to false & startup only 1 db instance in upgrade ,mode and execute datapatch verbose, during that time total downtime needed.
Very well done, important not to stop at the 17 minute mark as the subsequent demonstration is very informative and helps to illustrate the previous section.
That's nice catch. I believe explanation with graphical illustration will help in understanding easily.
Glad that it helped you.
Create restore point and take backup of binary is missing other wise it is amazing video
Your content is Gold for a DBA👏🏻👏🏻👏🏻👏🏻
thanks
Your videos are the best, you answered all my questions regarding this topic. Thank you!!!
Much thanks for your valuable session sir.
Always welcome
good contents, very practical... Thanks
You are welcome
Thank you so much for the great explanation
Thank you Bro. Very informative.
Hi, why you dont´use opatchauto instead of opatch ? With opatchauto you can patch in a single command both GI home and DB home and will avoid all the manul steps that you are doing
opatchauto is really a great tool. You can use that
In case if opatchauoto fails at end moment suppose after 99% of patching completed and if it fails then it will rollback everything.
opatchauto can to
>>> GI patching
>>> DB patching
>>> datapatch also
Hi , Nice explanation . Really helpful . 1 query While patching on node 1 , DB is fully running on Node 2 correct ? I mean no need to take application downtime? right ?
Please let me know
Please reply ..
@@ameetmehta6749if you are applying only PSU patch then no downtime needed, apply patch at binary level on every node of the cluster and then execute datapatch verbose on any one node, no downtime needed. But if you are applying OJVM patch also then after applying PSU +OJVM patches at binary level for every node, you need to stop all db instances change cluster parameter to false, startup only one node in upgrade mode and execute datapatch verbose, here you will need a downtime.
Very nice tutorial, thanks! For 12c I guess that are similar steps. I have to migrate a 12c database, is it correct to install database software on new machines, install patches and after that to restore database with rman? Ty!
Thats correct
Hi mallik, In the first node we can see 3 diff DB running with diff home. To patch DEV DB using rolling fashion , we can use srvctl stop instance... command right to stop the instance on node 1.
Is srvctl stop instance & srvctl stop home same or different in this scenario?
Yes we can do that. better you can go with srvctl stop home.
If only DBs running on that home means it does not matter you can go with whichever way.
Other than DB some services and listener are all running on that home means then you have to go with srvctl stop home.
Thanks Mallik, very informative 🙏🙏 , one quick query do we need to run the Datapatch verbose from all the nodes?
Or just running it from one node is fine?
Any one node u can run it.
No need to run from all the nodes
Thanks you sir Sir...... You explain steps very well. the ocmrf response file is depricated
Yes that correct
Thank you for the detailed session :)
Quick question: For Ex: If a DB_HOME1 has 10 databases, here we are using SRVCTL to STOP/START databases in its original state.
Usually DATAPATCH to be run in UPGRADE mode, in the above case how we can start DB in UPGRADE and once patch completed later need to start DB to its original state.
Can you please suggest
Only only if you apply OJVM patch then you need to start your database instance in upgrade mode and run the datapatch
If you apply PSU you can run the datapatch in open mode.
You have to set cluster_database parameter to false and start only 1 instance in upgrade mode and run the datapatch.
After datapatch set cluster_database parameter back to true and start your database using srvctl
Hi Sir, I have applied 19.23 RU to 19.20 to GI home. Post patching crsctl query crs activeversion showing still 19.20. 19.23 patch went without any error. Could you share the work around for this issue?
sir.when we unlock gi home does it bring down the DBs(instances)on that particular server?
Yes thats correct
@@VismoTechnologies imagine that there are 2 nodes. Does it apply datapatch verbose during first node or during the second node?
@@good123gyou can execute datapatch verbose on any one node, datapatch verbose updates the db registry and hence must be executed only on any one node.
Many thanks for your efforts
Hi sir ,
We can opatchauto sir it will apply on both grid and oracle home , ojvm we will separately
Really helpful..Thanks for such great video
Excellent video
Hi Malik, Nice content.. can u share me the notepad with all commands for reference ?
One quick question, while patching to DB home, do we need to bring down DB or instance only ?
we need to bring down one instance out of two instance running for the database then we can apply the patch at binary level for one instance then start instance one and then go to second node stop instance second and apply the patch to binary of 2nd instance and then start second instance ,, to apply the patch at database level using datapatch we can apply data patch when both the instance are running and up. Datapatch can be applied to only one instance
Thank you so much 🙏
You're welcome 😊
Do we need to apply datapatch for every database in cluster by setting environment
Suppose we have multiple databases in 2 node rac
Yes if you have multiple databases running on each node of the RAC, every db instance for which you have executed apply patch , datapatch verbose has to be executed on any one node, it will update the patch registry at database level.
Is there any way to apply datapatch(OJVM) without downtime like rolling fashion in 3 node rac ??
I think no, because after ojvm, we have to shutdown all instances, change cluster parameter to false & startup only 1 db instance in upgrade ,mode and execute datapatch verbose, during that time total downtime needed.
Very Good