{"id":309825,"date":"2020-09-12T15:00:13","date_gmt":"2020-09-12T15:00:13","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=309825"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=309825","title":{"rendered":"\u0420\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f Oracle \u0438 UCP Fast Connection Failover"},"content":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/516872\/\">\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/bp\/1d\/gt\/bp1dgtoknldty1raxu3mjhmcrao.png\" width=\"430\"><\/div>\n<p>  \u0418\u043d\u043e\u0433\u0434\u0430 \u0432&nbsp;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Java-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0435\u0441\u0442\u044c IP-\u0430\u0434\u0440\u0435\u0441 &quot;Primary&quot; \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432&nbsp;\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445:<\/p>\n<ul>\n<li>\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0435\u043c\u0430\u044f \u0441\u043c\u0435\u043d\u0430 \u0440\u043e\u043b\u0435\u0439 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445. &quot;Primary&quot; \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f &quot;Standby&quot; \u0438&nbsp;\u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442, &quot;Standby&quot; \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f &quot;Primary&quot;. \u0422\u0430\u043a\u0430\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f &quot;Switchover&quot;.<\/li>\n<li>\u0410\u0432\u0430\u0440\u0438\u0439\u043d\u0430\u044f \u0441\u043c\u0435\u043d\u0430 \u0440\u043e\u043b\u0438 &quot;Standby&quot; \u043d\u0430&nbsp;&quot;Primary&quot;. \u042d\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f &quot;Failover&quot;.<\/li>\n<\/ul>\n<p>  \u0412&nbsp;\u043e\u0431\u043e\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u043d\u0435&nbsp;\u0442\u043e\u043b\u044c\u043a\u043e &quot;\u0437\u043d\u0430\u0442\u044c&quot; \u043f\u0440\u043e IP-\u0430\u0434\u0440\u0435\u0441 \u043d\u043e\u0432\u043e\u0433\u043e &quot;Primary&quot; \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043d\u043e&nbsp;\u0438&nbsp;\u0443\u043c\u0435\u0442\u044c \u043a&nbsp;\u043d\u0435\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u043d\u0443\u0436\u043d\u043e. \u0414\u0430\u043b\u0435\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043a\u0440\u0430\u0442\u043a\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441&nbsp;\u043f\u043e\u043c\u043e\u0449\u044c\u044e Oracle Universal Connection Pool (UCP), \u0430&nbsp;\u0442\u0430\u043a\u0436\u0435 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f &quot;Switchover&quot;.<\/p>\n<p>  <a name=\"habracut\"><\/a><br \/>  \u0414\u043b\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c:<\/p>\n<ul>\n<li>MacBook c&nbsp;\u043e\u0431\u044a\u0435\u043c\u043e\u043c RAM 16&nbsp;\u0413\u0431 (\u0434\u043b\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u043d\u0443\u0436\u043d\u043e \u0431\u043e\u043b\u0435\u0435 8&nbsp;\u0413\u0431)<\/li>\n<li>Virtual Box \u0432\u0435\u0440\u0441\u0438\u0438 6.1.12<\/li>\n<li>2x&nbsp;\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b (\u0434\u0430\u043b\u0435\u0435 VM) c&nbsp;<a href=\"http:\/\/isoredirect.centos.org\/centos\/7\/isos\/x86_64\/\" rel=\"nofollow\">CentOS 7&nbsp;Minimal<\/a>, \u043a\u0430\u0436\u0434\u0430\u044f \u0438\u0437&nbsp;\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u043c\u0435\u0435\u0442<br \/> \n<ul>\n<li>2x vCPU<\/li>\n<li>2048 \u0413\u0431 RAM (\u0441 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0434\u043e 8\u0413\u0431, \u043f\u043e \u043e\u0447\u0435\u0440\u0435\u0434\u0438)<\/li>\n<li>40 \u0413\u0431 HDD<\/li>\n<li>\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0435 \u0430\u0443\u0434\u0438\u043e, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c <a href=\"https:\/\/www.virtualbox.org\/ticket\/18089\" rel=\"nofollow\">\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 CPU 100% <\/a><\/li>\n<\/ul>\n<\/li>\n<li>Oracle Database 19c<\/li>\n<\/ul>\n<p>  \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438:<\/p>\n<ol>\n<li><a href=\"#VM\">\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d<\/a><\/li>\n<li><a href=\"#Oracle\">\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Oracle<\/a><\/li>\n<li><a href=\"#Standby\">\u0420\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f Oracle<\/a><\/li>\n<li><a href=\"#Grid\">\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Oracle Grid<\/a><\/li>\n<li><a href=\"#Switchover\">\u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f &quot;Switchover&quot; \u043d\u0430 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u043c Java \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438<\/a><\/li>\n<\/ol>\n<p>  <a name=\"VM\"><\/a>  <\/p>\n<h3>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/pp\/yq\/8o\/ppyq8ovlqa2vu2qs91samxltpni.png\" width=\"600\"><\/div>\n<p>  \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b (\u0434\u0430\u043b\u0435\u0435 VMs) \u0441&nbsp;\u0442\u0438\u043f\u043e\u043c Linux Red Hat, \u0441\u0442\u0430\u0440\u0442\u0443\u0435\u043c. \u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 Virtual Box \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0432\u044b\u0431\u0440\u0430\u0442\u044c iso, \u0441&nbsp;\u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c&nbsp;VM (\u0432&nbsp;\u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f CentOS-7-x86_64-Minimal-1908.iso). \u041e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0432\u0441\u0435 \u043f\u043e&nbsp;\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c, \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c &quot;Virtual Box Guest Additions&quot;, \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c firewalld, \u0447\u0442\u043e\u0431\u044b \u043d\u0435&nbsp;\u043c\u0435\u0448\u0430\u043b\u0441\u044f. &quot;\u041a\u0430\u043a \u043e\u0447\u0438\u0449\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u0438\u0442\u0443\u0440\u0430&nbsp;&mdash; \u044d\u0442\u043e \u0432\u0441\u044f\u043a\u0438\u0439 \u0437\u043d\u0430\u0435\u0442&quot;, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0442\u043c\u0435\u0442\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e, \u0447\u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f VMs \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0438\u0445&nbsp;\u0441\u0435\u0442\u0435\u0432\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b \u0441&nbsp;\u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430 NAT \u043d\u0430&nbsp;&quot;\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0430\u043f\u0442\u0435\u0440 \u0445\u043e\u0441\u0442\u0430&quot; vboxnet0. \u042d\u0442\u043e\u043c\u0443 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0432&nbsp;\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0445 Virtual Box, \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0437\u0430\u0434\u0430\u0435\u043c \u0430\u0434\u0440\u0435\u0441 192.168.56.1\/24 \u0438&nbsp;\u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c DHCP. \u041f\u043e&nbsp;\u0441\u0443\u0442\u0438, \u044d\u0442\u043e IP-\u0430\u0434\u0440\u0435\u0441 \u0448\u043b\u044e\u0437\u0430 \u043f\u043e&nbsp;\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043b\u044f VMs \u0438&nbsp;\u0430\u0434\u0440\u0435\u0441 Java-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u041f\u0440\u043e\u0441\u0442\u043e \u0434\u043b\u044f \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u043e\u0441\u0442\u0438. \u0410&nbsp;\u0435\u0441\u043b\u0438 \u043d\u0430&nbsp;CentOS \u0432\u0441\u0435 \u0435\u0449\u0435 \u043d\u0443\u0436\u0435\u043d \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442, \u0442\u043e&nbsp;\u043c\u043e\u0436\u043d\u043e <a href=\"https:\/\/apple.stackexchange.com\/questions\/192089\/how-can-i-setup-my-mac-os-x-yosemite-as-an-internet-gateway\" rel=\"nofollow\">\u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c NAT \u043d\u0430&nbsp;MacOS<\/a>:<\/p>\n<ol>\n<li>\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u0432&nbsp;\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f root \u0441&nbsp;\u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u2019sudo su -\u2032.<\/li>\n<li>\u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0441&nbsp;\u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u2019sysctl -w net.inet.ip.forwarding=1\u2032.<\/li>\n<li>\u0412&nbsp;\u0444\u0430\u0439\u043b \/var\/root\/pfnat.conf \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0444\u0430\u0439\u043b\u0430 \/etc\/pf.conf, \u0432&nbsp;\u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043d\u0430&nbsp;\u043c\u0435\u0441\u0442\u043e \u0441\u0442\u0440\u043e\u043a\u0438 \u2116&nbsp;3&nbsp;\u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0434\u043b\u044f NAT:<br \/> <br \/>\n<blockquote><p>nat on enX from vboxnet0:network to any -&gt; (enX)<\/p><\/blockquote>\n<p>  \u0433\u0434\u0435 enX \u2014 \u0438\u043c\u044f \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0441 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u043e\u043c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.<\/li>\n<li>\u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u2019pfctl -f pfnat.conf -e\u2032, \u0447\u0442\u043e\u0431\u044b \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0430\u043a\u0435\u0442\u043d\u043e\u0433\u043e \u0444\u0438\u043b\u044c\u0442\u0440\u0430.<\/li>\n<\/ol>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0428\u0430\u0433\u0438 2-4 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0432 \u043e\u0434\u043d\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u0443.<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">sysctl -w net.inet.ip.forwarding=1 \\  &amp;&amp; grep -v -E -e '^#.*' -e '^$' \/etc\/pf.conf | head -n2 &gt; pfnat.conf \\  &amp;&amp; INET_PORT=$(netstat -nrf inet | grep default | tr -s ' ' | cut -d ' ' -f 4) \\  &amp;&amp; echo &quot;nat on ${INET_PORT} from vboxnet0:network to any -&gt; (${INET_PORT})&quot; &gt;&gt; pfnat.conf \\  &amp;&amp; grep -v -E -e '^#.*' -e '^$' \/etc\/pf.conf | tail -n+3 &gt;&gt; pfnat.conf \\  &amp;&amp; pfctl -f pfnat.conf -e<\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u0412&nbsp;\/etc\/hosts \u0432\u0441\u0435\u0445 VMs \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043e\u0434\u043d\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0438 \u043c\u043e\u0433\u043b\u0438 &quot;\u043f\u0438\u043d\u0433\u043e\u0432\u0430\u0442\u044c&quot; \u0434\u0440\u0443\u0433 \u0434\u0440\u0443\u0433\u0430 \u043f\u043e&nbsp;\u0434\u043e\u043c\u0435\u043d\u043d\u044b\u043c \u0438\u043c\u0435\u043d\u0430\u043c.<\/p>\n<blockquote><p>127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4<br \/>  ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6<\/p>\n<p>  192.168.56.78 oracle1.localdomain oracle1<br \/>  192.168.56.79 oracle2.localdomain oracle2<\/p><\/blockquote>\n<p>  <a name=\"Oracle\"><\/a>  <\/p>\n<h3>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Oracle<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/su\/vr\/qc\/suvrqchq2xzkqyuaptxjsejn24e.png\" width=\"600\"><\/div>\n<p>  \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c &quot;Software only&quot; \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u043d\u0430&nbsp;oracle1 \u0438&nbsp;oracle2 \u0441&nbsp;<a href=\"https:\/\/docs.oracle.com\/en\/database\/oracle\/oracle-database\/19\/ladbi\/running-rpm-packages-to-install-oracle-database.html\" rel=\"nofollow\">\u043f\u043e\u043c\u043e\u0449\u044c\u044e rpm-\u043f\u0430\u043a\u0435\u0442\u043e\u0432<\/a>, \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e \u0441&nbsp;\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0441\u0448\u0430\u0440\u0438\u0442\u044c \u0441&nbsp;MacOS \u0447\u0435\u0440\u0435\u0437 Virtual Box (Machine-&gt;Settings-&gt;Shared Folder).<\/p>\n<pre><code class=\"bash\">yum -y localinstall oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"bash\">yum -y localinstall oracle-database-ee-19c-1.0-1.x86_64.rpm<\/code><\/pre>\n<p>  \u0414\u0430\u043b\u0435\u0435, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430 \u0421\u0423\u0411\u0414 \u043d\u0430&nbsp;VM&nbsp;&quot;oracle1&quot;. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oralce \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442.<\/p>\n<pre><code class=\"bash\">\/etc\/init.d\/oracledb_ORCLCDB-19c configure<\/code><\/pre>\n<p>  \u042d\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f. \u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430 \u043d\u0430 \u043e\u0431\u043e\u0438\u0445 \u0445\u043e\u0441\u0442\u0430\u0445 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432&nbsp;\u0444\u0430\u0439\u043b \/home\/oracle\/.bash_profile \u0432\u043e\u0442 \u044d\u0442\u0438 \u0441\u0442\u0440\u043e\u0447\u043a\u0438:<\/p>\n<blockquote><p>export ORACLE_HOME=&quot;\/opt\/oracle\/product\/19c\/dbhome_1&quot;<br \/>  export ORACLE_BASE=&quot;\/opt\/oracle&quot;<br \/>  export ORACLE_SID=&quot;ORCLCDB&quot;<br \/>  export PATH=$PATH:$ORACLE_HOME\/bin<\/p><\/blockquote>\n<p>  \u041d\u0443&nbsp;\u0438&nbsp;\u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c ssh \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430, \u0447\u0442\u043e\u0431\u044b \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043f\u043e\u0434&nbsp;\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u043a&nbsp;\u0445\u043e\u0441\u0442\u0443 \u043f\u043e&nbsp;ssh \u0438&nbsp;\u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u043a&nbsp;\u0411\u0414.<\/p>\n<blockquote><p>user@macbook:~$ ssh oracle@oracle1<br \/>  Last login: Wed Aug 12 16:17:05 2020<br \/>  [oracle@oracle1 ~]$ sqlplus \/ as sysdba<\/p>\n<p>  SQL*Plus: Release 19.0.0.0.0 \u2014 Production on Wed Aug 12 16:19:44 2020<br \/>  Version 19.3.0.0.0<\/p>\n<p>  Copyright &copy; 1982, 2019, Oracle. All rights reserved.<\/p>\n<p>  Connected to:<br \/>  Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 \u2014 Production<br \/>  Version 19.3.0.0.0<\/p>\n<p>  SQL&gt;  <\/p><\/blockquote>\n<p>  \u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, Oracle. \u0414\u043b\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u043d\u0430\u043c \u0442\u0430\u043a\u0436\u0435 \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044e.<br \/>  <a name=\"Standby\"><\/a>  <\/p>\n<h3>\u0420\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f Oracle.<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/_s\/ml\/gl\/_smlglxfc1rzzq2cwirdykesooy.png\" width=\"600\"><\/div>\n<p>  \u0414\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0439 <a href=\"https:\/\/oracle-base.com\/articles\/19c\/data-guard-setup-using-broker-19c\" rel=\"nofollow\">\u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0435\u0439<\/a>:<\/p>\n<ol>\n<li>\u041f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u043c&nbsp;\u0411\u0414 \u043d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1&nbsp;\u0432 &quot;Archive Mode&quot;. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432&nbsp;sqlplus \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u044b:\n<pre><code class=\"sql\">SHUTDOWN IMMEDIATE;<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"sql\">STARTUP MOUNT;<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"sql\">ALTER DATABASE ARCHIVELOG;<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"sql\">ALTER DATABASE OPEN;<\/code><\/pre>\n<\/li>\n<li>\u041d\u0435 \u0432\u044b\u0445\u043e\u0434\u044f \u0438\u0437 sqlplus, \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c &quot;Force logging&quot; \u043d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1.\n<pre><code class=\"sql\">ALTER DATABASE FORCE LOGGING;<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"sql\">ALTER SYSTEM SWITCH LOGFILE;<\/code><\/pre>\n<\/li>\n<li>\u0421\u043e\u0437\u0434\u0430\u0435\u043c &quot;redo log&quot; \u0444\u0430\u0439\u043b\u044b \u043d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1.<br \/> \n<pre><code class=\"sql\">ALTER DATABASE       ADD STANDBY LOGFILE       THREAD 1 GROUP 10 ('\/opt\/oracle\/oradata\/ORCLCDB\/standby_redo01.log')       SIZE 209715200;<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"sql\">ALTER DATABASE       ADD STANDBY LOGFILE       THREAD 1 GROUP 11 ('\/opt\/oracle\/oradata\/ORCLCDB\/standby_redo02.log')       SIZE 209715200;<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"sql\">ALTER DATABASE       ADD STANDBY LOGFILE       THREAD 1 GROUP 12 ('\/opt\/oracle\/oradata\/ORCLCDB\/standby_redo03.log')       SIZE 209715200;<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"sql\">ALTER DATABASE       ADD STANDBY LOGFILE       THREAD 1 GROUP 13 ('\/opt\/oracle\/oradata\/ORCLCDB\/standby_redo04.log')       SIZE 209715200;<\/code><\/pre>\n<\/li>\n<li>\u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c &quot;FLASHBACK&quot; \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1, \u0431\u0435\u0437 \u043d\u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442.<br \/> <br \/>\n<blockquote><p>SQL&gt; host<br \/>   [oracle@oracle1 ~]$ mkdir \/opt\/oracle\/recovery_area<br \/>   [oracle@oracle1 ~]$ exit<br \/>   SQL&gt; alter system set db_recovery_file_dest_size=2g scope=both;<br \/>   SQL&gt; alter system set db_recovery_file_dest=&#8217;\/opt\/oracle\/recovery_area&#8217; scope=both;<br \/>   SQL&gt; ALTER DATABASE FLASHBACK ON;<\/p><\/blockquote>\n<\/li>\n<li>\u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043d\u0435\u0447\u0442\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1.<br \/> <br \/>\n<blockquote><p>SQL&gt; ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO;<\/p><\/blockquote>\n<\/li>\n<li>\u041c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u043c tnsnames.ora \u0438 listener.ora \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1 \u0438 oracle2 \u0434\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0439:<br \/> \n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">oracle1, \u0444\u0430\u0439\u043b $ORACLE_HOME\/network\/admin\/tnsnames.ora<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\"> LISTENER_ORCLCDB =   (ADDRESS = (PROTOCOL = TCP)(HOST = oracle1.localdomain)(PORT = 1521))  ORCLCDB =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = oracle1.localdomain)(PORT = 1521))     )     (CONNECT_DATA =       (SID = ORCLCDB)     )   )  ORCLCDB_STBY =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = oracle2.localdomain)(PORT = 1521))     )     (CONNECT_DATA =       (SID = ORCLCDB)     )   ) <\/code><\/pre>\n<p>   <\/div>\n<\/p><\/div>\n<p>   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">oracle1, \u0444\u0430\u0439\u043b $ORACLE_HOME\/network\/admin\/listener.ora<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\"> LISTENER =   (DESCRIPTION_LIST =     (DESCRIPTION =       (ADDRESS = (PROTOCOL = TCP)(HOST = oracle1.localdomain)(PORT = 1521))       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))     )   )  SID_LIST_LISTENER =   (SID_LIST =     (SID_DESC =       (GLOBAL_DBNAME = ORCLCDB_DGMGRL)       (ORACLE_HOME = \/opt\/oracle\/product\/19c\/dbhome_1)       (SID_NAME = ORCLCDB)     )   )  ADR_BASE_LISTENER = \/opt\/oracle <\/code><\/pre>\n<p>   <\/div>\n<\/p><\/div>\n<p>   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">oracle2,  \u0444\u0430\u0439\u043b $ORACLE_HOME\/network\/admin\/tnsnames.ora<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\"> LISTENER_ORCLCDB =   (ADDRESS = (PROTOCOL = TCP)(HOST = oracle2.localdomain)(PORT = 1521))  ORCLCDB =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = oracle1.localdomain)(PORT = 1521))     )     (CONNECT_DATA =       (SID = ORCLCDB)     )   )  ORCLCDB_STBY =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = oracle2.localdomain)(PORT = 1521))     )     (CONNECT_DATA =       (SID = ORCLCDB)     )   ) <\/code><\/pre>\n<p>   <\/div>\n<\/p><\/div>\n<p>   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">oracle2, \u0444\u0430\u0439\u043b $ORACLE_HOME\/network\/admin\/listener.ora<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\"> LISTENER =   (DESCRIPTION_LIST =     (DESCRIPTION =       (ADDRESS = (PROTOCOL = TCP)(HOST = oracle2.localdomain)(PORT = 1521))       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))     )   )  SID_LIST_LISTENER =   (SID_LIST =     (SID_DESC =       (GLOBAL_DBNAME = ORCLCDB_STBY_DGMGRL)       (ORACLE_HOME = \/opt\/oracle\/product\/19c\/dbhome_1)       (SID_NAME = ORCLCDB)     )   )  ADR_BASE_LISTENER = \/opt\/oracle <\/code><\/pre>\n<p>   <\/div>\n<\/p><\/div>\n<\/li>\n<li>\u041d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e <s>\u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044f<\/s> listener-\u0430.<br \/> <br \/>\n<blockquote><p>[oracle@oracle1 ~]$ lsnrctl reload<\/p><\/blockquote>\n<p>   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0411\u044b\u043b\u043e<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<blockquote><p>[oracle@oracle1 ~]$ lsnrctl status<\/p>\n<p>  LSNRCTL for Linux: Version 19.0.0.0.0 \u2014 Production on 15-AUG-2020 08:17:24<\/p>\n<p>  Copyright &copy; 1991, 2019, Oracle. All rights reserved.<\/p>\n<p>  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle1.localdomain)(PORT=1521)))<br \/>   STATUS of the LISTENER<br \/>   \u2014  Alias LISTENER<br \/>   Version TNSLSNR for Linux: Version 19.0.0.0.0 \u2014 Production<br \/>   Start Date 15-AUG-2020 08:09:57<br \/>   Uptime 0 days 0 hr. 7 min. 26 sec<br \/>   Trace Level off<br \/>   Security ON: Local OS Authentication<br \/>   SNMP OFF<br \/>   Listener Parameter File \/opt\/oracle\/product\/19c\/dbhome_1\/network\/admin\/listener.ora<br \/>   Listener Log File \/opt\/oracle\/diag\/tnslsnr\/oracle1\/listener\/alert\/log.xml<br \/>   Listening Endpoints Summary\u2026<br \/>   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle1.localdomain)(PORT=1521)))<br \/>   (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))<br \/>   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=oracle1.localdomain)(PORT=5500))(Security=(my_wallet_directory=\/opt\/oracle\/admin\/ORCLCDB\/xdb_wallet))(Presentation=HTTP)(Session=RAW))<br \/>   Services Summary\u2026<br \/>   Service \u00abORCLCDB\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status READY, has 1 handler(s) for this service\u2026<br \/>   Service \u00abORCLCDBXDB\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status READY, has 1 handler(s) for this service\u2026<br \/>   Service \u00abac8d8d741e3e2a52e0534e38a8c0602d\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status READY, has 1 handler(s) for this service\u2026<br \/>   Service \u00aborclpdb1\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status READY, has 1 handler(s) for this service\u2026<br \/>   The command completed successfully<\/p><\/blockquote>\n<\/div><\/div>\n<p>   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0421\u0442\u0430\u043b\u043e (\u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0441\u0442\u0440\u043e\u0447\u043a\u0430 \u0434\u043b\u044f Data Guard: ORCLCDB_DGMGRL)<\/b>                         <\/p>\n<div class=\"spoiler_text\"> [oracle@oracle1 ~]$ lsnrctl status<\/p>\n<p>  LSNRCTL for Linux: Version 19.0.0.0.0 \u2014 Production on 15-AUG-2020 08:17:32<\/p>\n<p>  Copyright &copy; 1991, 2019, Oracle. All rights reserved.<\/p>\n<p>  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle1.localdomain)(PORT=1521)))<br \/>   STATUS of the LISTENER<br \/>   \u2014  Alias LISTENER<br \/>   Version TNSLSNR for Linux: Version 19.0.0.0.0 \u2014 Production<br \/>   Start Date 15-AUG-2020 08:09:57<br \/>   Uptime 0 days 0 hr. 7 min. 34 sec<br \/>   Trace Level off<br \/>   Security ON: Local OS Authentication<br \/>   SNMP OFF<br \/>   Listener Parameter File \/opt\/oracle\/product\/19c\/dbhome_1\/network\/admin\/listener.ora<br \/>   Listener Log File \/opt\/oracle\/diag\/tnslsnr\/oracle1\/listener\/alert\/log.xml<br \/>   Listening Endpoints Summary\u2026<br \/>   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle1.localdomain)(PORT=1521)))<br \/>   (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))<br \/>   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=oracle1.localdomain)(PORT=5500))(Security=(my_wallet_directory=\/opt\/oracle\/admin\/ORCLCDB\/xdb_wallet))(Presentation=HTTP)(Session=RAW))<br \/>   Services Summary\u2026<br \/>   Service \u00abORCLCDB\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status READY, has 1 handler(s) for this service\u2026<br \/>   Service \u00abORCLCDBXDB\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status READY, has 1 handler(s) for this service\u2026<br \/>   Service \u00abORCLCDB_DGMGRL\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status UNKNOWN, has 1 handler(s) for this service\u2026<br \/>   Service \u00abac8d8d741e3e2a52e0534e38a8c0602d\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status READY, has 1 handler(s) for this service\u2026<br \/>   Service \u00aborclpdb1\u00bb has 1 instance(s).<br \/>   Instance \u00abORCLCDB\u00bb, status READY, has 1 handler(s) for this service\u2026<br \/>   The command completed successfully<\/div>\n<\/p><\/div>\n<\/li>\n<li>\u041c\u0435\u043d\u044f\u0435\u043c \u043f\u0430\u0440\u043e\u043b\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e SYS \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1.<br \/> <br \/>\n<blockquote><p>SQL&gt; alter user sys identified by &quot;pa_SSw0rd&quot;;<\/p><\/blockquote>\n<\/li>\n<li>\u041d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle2 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c listener \u0438 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0440\u0435\u043f\u043b\u0438\u043a\u0443.<br \/> <br \/>\n<blockquote><p>[oracle@oracle2 ~]$ lsnrctl start<br \/>   [oracle@oracle2 ~]$ orapwd file=$ORACLE_BASE\/product\/19c\/dbhome_1\/dbs\/orapwORCLCDB entries=10 password=pa_SSw0rd<br \/>   [oracle@oracle2 ~]$ echo &quot;*.db_name=&#8217;ORCLCDB&#8217;&quot; &gt; \/tmp\/initORCLCDB_STBY.ora<br \/>   [oracle@oracle2 ~]$ mkdir -p $ORACLE_BASE\/oradata\/ORCLCDB\/pdbseed<br \/>   [oracle@oracle2 ~]$ mkdir -p $ORACLE_BASE\/oradata\/ORCLCDB\/ORCLPDB1<br \/>   [oracle@oracle2 ~]$ mkdir -p $ORACLE_BASE\/admin\/ORCLCDB\/adump<br \/>   [oracle@oracle2 ~]$ mkdir \/opt\/oracle\/recovery_area<br \/>   [oracle@oracle2 ~]$ sqlplus \/ as sysdba<br \/>   SQL&gt; STARTUP NOMOUNT PFILE=&#8217;\/tmp\/initORCLCDB_STBY.ora&#8217;<br \/>   [oracle@oracle2 ~]$ rman TARGET sys\/pa_SSw0rd@ORCLCDB AUXILIARY sys\/pa_SSw0rd@ORCLCDB_STBY<br \/>   RMAN&gt; DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE DORECOVER SPFILE SET db_unique_name=&#8217;ORCLCDB_STBY&#8217; COMMENT &#8216;Is standby&#8217; NOFILENAMECHECK;<\/p><\/blockquote>\n<\/li>\n<li>\u041d\u0430 \u043e\u0431\u043e\u0438\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445 (oracle1 \u0438 oracle2) \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c Data Guard.<br \/> <br \/>\n<blockquote><p>SQL&gt; ALTER SYSTEM SET dg_broker_start=true;<\/p><\/blockquote>\n<\/li>\n<li>\u041d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u043a \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f Data Guard \u0438 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e.<br \/> <br \/>\n<blockquote><p>[oracle@oracle1 ~]$ dgmgrl sys\/pa_SSw0rd@ORCLCDB<br \/>   DGMGRL&gt; CREATE CONFIGURATION my_dg_config AS PRIMARY DATABASE IS ORCLCDB CONNECT IDENTIFIER IS ORCLCDB;<br \/>   DGMGRL&gt; ADD DATABASE ORCLCDB_STBY AS CONNECT IDENTIFIER IS ORCLCDB_STBY MAINTAINED AS PHYSICAL;<br \/>   DGMGRL&gt; enable configuration;<\/p><\/blockquote>\n<\/li>\n<\/ol>\n<p>  \u0418\u0442\u0430\u043a, \u0432&nbsp;\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0440\u0435\u043f\u043b\u0438\u043a\u0438 \u0438&nbsp;\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f Data Guard \u043c\u044b&nbsp;\u0438\u043c\u0435\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435:<\/p>\n<pre><code class=\"sql\">DGMGRL&gt; show configuration  Configuration - my_dg_config    Protection Mode: MaxPerformance   Members:   orclcdb      - Primary database     orclcdb_stby - Physical standby database        Warning: ORA-16854: apply lag could not be determined  Fast-Start Failover:  Disabled  Configuration Status: WARNING   (status updated 40 seconds ago)<\/code><\/pre>\n<p>  \u042d\u0442\u043e \u043f\u043b\u043e\u0445\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0434\u043e\u0436\u0434\u0435\u043c \u043d\u0435\u043c\u043d\u043e\u0433\u043e\u2026<\/p>\n<pre><code class=\"sql\">DGMGRL&gt; show configuration  Configuration - my_dg_config    Protection Mode: MaxPerformance   Members:   orclcdb      - Primary database     orclcdb_stby - Physical standby database   Fast-Start Failover:  Disabled  Configuration Status: SUCCESS   (status updated 55 seconds ago)<\/code><\/pre>\n<p>  \u0412\u043e\u0442 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0445\u043e\u0440\u043e\u0448\u0435\u0435! \u041f\u0440\u0430\u0432\u0434\u0430, \u0440\u0435\u043f\u043b\u0438\u043a\u0430 \u0432\u0435\u0441\u044c\u043c\u0430 \u043f\u0430\u0441\u0441\u0438\u0432\u043d\u0430, \u043e\u043d\u0430 \u043d\u0435&nbsp;\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043d\u0430&nbsp;\u0447\u0442\u0435\u043d\u0438\u0435 (OPEN MODE: MOUNTED).<\/p>\n<pre><code class=\"sql\">SQL&gt; show pdbs      CON_ID CON_NAME\t\t\t  OPEN MODE  RESTRICTED ---------- ------------------------------ ---------- ----------   \t 2 PDB$SEED\t\t\t  MOUNTED \t 3 ORCLPDB1\t\t\t  MOUNTED<\/code><\/pre>\n<p>  \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0440\u0435\u043f\u043b\u0438\u043a\u0443 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u043b\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043d\u0430 \u0447\u0442\u0435\u043d\u0438\u0435. \u0422\u043e\u0433\u0434\u0430 \u043c\u044b, \u0432 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u0435, \u0441\u043c\u043e\u0436\u0435\u043c \u0440\u0430\u0437\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 &quot;Primary&quot; \u0431\u0430\u0437\u043e\u0439. \u042d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f &quot;Active Data Guard&quot;, \u043b\u0438\u0431\u043e <a href=\"https:\/\/www.oracle.com\/technetwork\/database\/availability\/dg-adg-technical-overview-wp-5347548.pdf\" rel=\"nofollow\">active standby<\/a>. \u041d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle2 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434 \u0432&nbsp;sqlplus:  <\/p>\n<pre><code class=\"sql\">alter database        recover managed standby database cancel;<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"sql\">alter database open;<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"sql\">alter database        recover managed standby database        using current logfile        disconnect from session;<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"sql\">alter pluggable database all open;<\/code><\/pre>\n<p>  \u0412\u043e\u0442 \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0438 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0441 \u0440\u0435\u043f\u043b\u0438\u043a\u0438 (OPEN MODE: READ ONLY):  <\/p>\n<pre><code class=\"sql\">SQL&gt; show pdbs;      CON_ID CON_NAME\t\t\t  OPEN MODE  RESTRICTED ---------- ------------------------------ ---------- ----------   \t 2 PDB$SEED\t\t\t  READ ONLY  NO \t 3 ORCLPDB1\t\t\t  READ ONLY  NO<\/code><\/pre>\n<p>  \u0418&nbsp;\u0432&nbsp;\u043a\u043e\u043d\u0441\u043e\u043b\u0438 DataGuard \u043d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1 \u0432\u0441\u0435 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043d\u0435\u043f\u043b\u043e\u0445\u043e:  <\/p>\n<pre><code class=\"sql\">DGMGRL&gt; show configuration;  Configuration - my_dg_config    Protection Mode: MaxPerformance   Members:   orclcdb      - Primary database     orclcdb_stby - Physical standby database   Fast-Start Failover:  Disabled  Configuration Status: SUCCESS   (status updated 19 seconds ago)<\/code><\/pre>\n<p>  \u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430&nbsp;\u0442\u043e, \u0447\u0442\u043e Data Guard \u0443&nbsp;\u043d\u0430\u0441 \u0442\u0435\u043f\u0435\u0440\u044c Active, \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432\u0441\u0435 \u0435\u0449\u0435 \u0432\u043e&nbsp;\u043c\u043d\u043e\u0433\u043e\u043c \u043f\u0430\u0441\u0441\u0438\u0432\u0435\u043d. \u041d\u0430\u043c \u0438&nbsp;\u043d\u0430\u0448\u0435\u043c\u0443 \u0432\u043e\u0441\u0445\u0438\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043c\u0443 Java-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e \u043e\u043d&nbsp;\u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u043d\u0435&nbsp;\u0441\u043a\u0430\u0436\u0435\u0442 \u043d\u0438&nbsp;\u0441\u043b\u043e\u0432\u0430 \u043e&nbsp;\u0442\u043e\u043c, \u0447\u0442\u043e Primary \u0442\u0435\u043f\u0435\u0440\u044c \u043d\u0435&nbsp;Primary. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u0430 \u0435\u0449\u0435 \u043e\u0434\u043d\u0430 \u0441\u043b\u0443\u0436\u0431\u0430, ONS (Oracle Notification Services). \u0418&nbsp;\u043f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u044d\u0442\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 Oracle Database \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c Oracle Grid.<\/p>\n<p>  <a name=\"Grid\"><\/a><\/p>\n<h3>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Oracle Grid.<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/gx\/yd\/v2\/gxydv2cbbz7a5_3zry8oexs8r-4.png\" width=\"600\"><\/div>\n<p>  \u0422\u0443\u0442 \u0432\u0441\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e: \u043a\u0430\u043a \u0438 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 Oracle Database \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0431\u0443\u0434\u0435\u043c \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c <a href=\"https:\/\/docs.oracle.com\/en\/database\/oracle\/oracle-database\/19\/ladbi\/installing-software-binaries-for-oracle-grid-infrastructure-for-a-standalone-server.html\" rel=\"nofollow\">\u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438<\/a>.<\/p>\n<ol>\n<li>\u041d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1 \u0438&nbsp;oracle2 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c root \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0438&nbsp;\u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u044b\u0432\u0430\u0435\u043c \u0430\u0440\u0445\u0438\u0432 \u0441&nbsp;Oracle Grid, \u0441\u0442\u0430\u0432\u0438\u043c gcc-c++, \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f oracle \u0432&nbsp;\u0433\u0440\u0443\u043f\u043f\u0443 asm. \u0412&nbsp;\u0441\u043b\u0443\u0447\u0430\u0435 Virtual Box, \u043a\u0430\u043a \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 Oracle, \u043f\u0440\u043e\u0441\u0442\u043e \u043c\u043e\u043d\u0442\u0438\u0440\u0443\u0435\u043c \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e Oracle Grid \u043a&nbsp;\u043e\u0431\u0435\u0438\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c \u043c\u0430\u0448\u0438\u043d\u0430\u043c \u0438&nbsp;\u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c.<br \/> \n<pre><code class=\"bash\">mkdir -p \/opt\/oracle\/product\/19c\/grid \\         &amp;&amp; cp -r \/mnt\/oracle_grid_19300\/LINUX\/* \/opt\/oracle\/product\/19c\/grid\/ \\         &amp;&amp; chown -R oracle:oinstall \/opt\/oracle\/product\/19c\/grid<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">yum install -y gcc-c++<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">groupadd asm &amp;&amp; usermod -aG asm oracle<\/code><\/pre>\n<p>   <\/li>\n<li>\u0414\u0430\u043b\u0435\u0435, \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u0432&nbsp;\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f oracle, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f \u043c\u0430\u0448\u0438\u043d\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c Oracle Grid.<br \/> \n<pre><code class=\"bash\">cd \/opt\/oracle\/product\/19c\/grid\/ &amp;&amp; .\/runcluvfy.sh stage -pre hacfg<\/code><\/pre>\n<p>   <\/p>\n<blockquote><p> Verifying Physical Memory &#8230;FAILED<br \/>   Required physical memory = 8GB<br \/>   Verifying Swap Size &#8230;FAILED<br \/>   Required = 2.6924GB (2823138.0KB); Found = 2GB (2097148.0KB)]   <\/p><\/blockquote>\n<p>   \u041c\u043e\u0436\u0435\u0442 \u044d\u0442\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0438&nbsp;\u043c\u043e\u0436\u043d\u043e \u043a\u0430\u043a-\u0442\u043e \u0438\u0437\u044f\u0449\u043d\u043e \u043e\u0431\u043e\u0439\u0442\u0438, \u043d\u043e&nbsp;\u043c\u044b&nbsp;\u0431\u0443\u0434\u0435\u043c \u043f\u043e\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0438&nbsp;swap, \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e\u0431\u044b Oracle Grid \u0432\u0441\u0442\u0430\u043b, \u0430&nbsp;\u043f\u043e\u0442\u043e\u043c \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u043f\u0440\u0435\u0436\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f.<\/li>\n<li>\u0412\u044b\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0441\u043f\u0435\u0440\u0432\u0430 oracle2, \u0437\u0430\u0442\u0435\u043c oracle1.<br \/> <br \/>\n<blockquote><p>SQL&gt; shutdown immediate<\/p><\/blockquote>\n<p>   <\/p>\n<blockquote><p># poweroff<\/p><\/blockquote>\n<\/li>\n<li>\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 oracle1 \u0434\u043e&nbsp;8192&nbsp;\u041c\u0431, \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c&nbsp;VM \u0438&nbsp;\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c swap \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c root.<br \/> \n<pre><code class=\"bash\">dd if=\/dev\/zero of=\/swap_file bs=1G count=7 \\             &amp;&amp; chmod 600 \/swap_file &amp;&amp; mkswap \/swap_file \\             &amp;&amp; echo '\/swap_file  swap  swap  defaults  0 0' &gt;&gt; \/etc\/fstab \\             &amp;&amp; swapoff -a &amp;&amp; swapon -a<\/code><\/pre>\n<\/li>\n<li>\u0412\u043d\u043e\u0432\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c, \u0447\u0442\u043e\u0431\u044b \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0432\u0441\u0435 \u0445\u043e\u0440\u043e\u0448\u043e.<br \/> <br \/>\n<blockquote><p>[oracle@oracle1 grid]$ cd \/opt\/oracle\/product\/19c\/grid\/ &amp;&amp; .\/runcluvfy.sh stage -pre hacfg<br \/>   Pre-check for Oracle Restart configuration was successful.<\/p><\/blockquote>\n<p>   \u041e\u0442\u043b\u0438\u0447\u043d\u043e! \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e Oracle Grid.<\/li>\n<li>\u041f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle \u043d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1&nbsp;\u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \/opt\/oracle\/product\/19c\/grid\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0444\u0430\u0439\u043b grid_configwizard.rsp.<br \/> \n<pre><code class=\"bash\">cd \/opt\/oracle\/product\/19c\/grid\/ &amp;&amp; touch grid_configwizard.rsp<\/code><\/pre>\n<p>   \u0421\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0444\u0430\u0439\u043b\u0430 grid_configwizard.rsp \u0431\u0443\u0434\u0435\u0442 \u0432\u0435\u0441\u044c\u043c\u0430 \u043b\u0430\u043a\u043e\u043d\u0438\u0447\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e oracle restart, \u0431\u0435\u0437 \u0432\u0441\u044f\u043a\u0438\u0445 \u0442\u0430\u043c ASM \u0438&nbsp;\u043f\u0440\u043e\u0447\u0438\u0445 \u0432\u043e\u0441\u0445\u0438\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439.   <\/p>\n<blockquote><p> oracle.install.responseFileVersion=\/oracle\/install\/rspfmt_crsinstall_response_schema_v19.0.0<br \/>   INVENTORY_LOCATION=\/opt\/oracle\/oraInventory<br \/>   oracle.install.option=CRS_SWONLY<br \/>   ORACLE_BASE=\/opt\/oracle<br \/>   oracle.install.asm.OSDBA=oinstall<br \/>   oracle.install.asm.OSASM=asm<br \/>   oracle.install.asm.SYSASMPassword=oracle<br \/>   oracle.install.asm.diskGroup.name=data<br \/>   oracle.install.asm.diskGroup.redundancy=NORMAL<br \/>   oracle.install.asm.diskGroup.AUSize=4<br \/>   oracle.install.asm.diskGroup.disksWithFailureGroupNames=\/dev\/sdb   <\/p><\/blockquote>\n<\/li>\n<li>\u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0441\u043a\u0440\u0438\u043f\u0442 \u043f\u043e&nbsp;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 oracle grid \u0432&nbsp;\u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435.<br \/> \n<pre><code class=\"bash\">.\/gridSetup.sh -silent \\                -responseFile \/opt\/oracle\/product\/19c\/grid\/grid_configwizard.rsp<\/code><\/pre>\n<\/li>\n<li>\u041f\u043e&nbsp;\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438, oracle grid \u043f\u0440\u043e\u0441\u0438\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c root, \u0447\u0442\u043e \u043c\u044b&nbsp;\u0438&nbsp;\u0434\u0435\u043b\u0430\u0435\u043c.<br \/> \n<pre><code class=\"bash\">\/opt\/oracle\/product\/19c\/grid\/root.sh<\/code><\/pre>\n<\/li>\n<li>\u0414\u0430\u043b\u0435\u0435, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 oracle restart \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c root \u0441\u043a\u0440\u0438\u043f\u0442\u0430 roothas.sh.<br \/> \n<pre><code class=\"bash\">cd \/opt\/oracle\/product\/19c\/grid\/crs\/install\/ &amp;&amp; .\/roothas.sh<\/code><\/pre>\n<p>   <\/li>\n<li>\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u0432&nbsp;\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f oracle \u0438&nbsp;\u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0441\u043a\u0440\u0438\u043f\u0442 runInstaller.<br \/> \n<pre><code class=\"bash\">cd \/opt\/oracle\/product\/19c\/grid\/oui\/bin\/ \\                             &amp;&amp; .\/runInstaller -updateNodeList \\                                 ORACLE_HOME=\/opt\/oracle\/product\/19c\/grid \\                                 -defaultHomeName CLUSTER_NODES= CRS=TRUE<\/code><\/pre>\n<\/li>\n<li>\u041d\u0430 \u043c\u0430\u0448\u0438\u043d\u0435 oracle1 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u043c \u0432 \/etc\/fstab \u0441\u0442\u0440\u043e\u0447\u043a\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \/swap_file, \u0432\u044b\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043c\u0430\u0448\u0438\u043d\u0443 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u0435\u0439 2048 \u041c\u0431 RAM.<\/li>\n<li>\u041f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0448\u0430\u0433\u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 &quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Oracle Grid&quot; \u0434\u043b\u044f VM oracle2.<\/li>\n<li>\u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043c\u044b&nbsp;\u0441\u043d\u043e\u0432\u0430 \u0432\u044b\u0434\u0430\u043b\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c \u043c\u0430\u0448\u0438\u043d\u0430\u043c \u0432\u043c\u0435\u043d\u044f\u0435\u043c\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438, \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0443\u0436\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b \u0432&nbsp;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e Oracle Restart. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043e\u0431\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u0438&nbsp;\u043d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440&nbsp;\u0411\u0414 \u0432&nbsp;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e Oracle Restart.<br \/> \n<pre><code class=\"bash\">srvctl add database -db ORCLCDB \\             -oraclehome \/opt\/oracle\/product\/19c\/dbhome_1 \\             -role PRIMARY<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">\/opt\/oracle\/product\/19c\/grid\/bin\/crsctl modify \\             res ora.cssd -attr &quot;AUTO_START=always&quot; -unsupported<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">\/opt\/oracle\/product\/19c\/grid\/bin\/crsctl stop has<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">\/opt\/oracle\/product\/19c\/grid\/bin\/crsctl start has<\/code><\/pre>\n<\/li>\n<li>\u041d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle2 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440&nbsp;\u0411\u0414 \u0432&nbsp;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e Oracle Restart.<br \/> \n<pre><code class=\"bash\">\/opt\/oracle\/product\/19c\/grid\/bin\/crsctl modify \\             res ora.cssd -attr &quot;AUTO_START=always&quot; -unsupported<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">\/opt\/oracle\/product\/19c\/grid\/bin\/crsctl stop has<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">\/opt\/oracle\/product\/19c\/grid\/bin\/crsctl start has<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">srvctl add database -db ORCLCDB_STBY \\            -oraclehome \/opt\/oracle\/product\/19c\/dbhome_1 \\            -role PHYSICAL_STANDBY \\            -spfile \/opt\/oracle\/product\/19c\/dbhome_1\/dbs\/spfileORCLCDB.ora \\            -dbname ORCLCDB -instance ORCLCDB<\/code><\/pre>\n<\/li>\n<li>\u041d\u0430&nbsp;\u043e\u0431\u043e\u0438\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445, oracle1 \u0438&nbsp;oracle2, \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c listener \u0432&nbsp;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e Oracle Restart.<br \/> \n<pre><code class=\"bash\">srvctl add listener<\/code><\/pre>\n<\/li>\n<li>\u041d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432&nbsp;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0438&nbsp;\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441 \u0411\u0414, ORCLCDB.<br \/> \n<pre><code class=\"bash\">srvctl add service -db ORCLCDB -service orclpdb -l PRIMARY -pdb ORCLPDB1<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">srvctl start service -db ORCLCDB -service orclpdb<\/code><\/pre>\n<\/li>\n<li>\u041d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle2 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432&nbsp;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0441\u0435\u0440\u0432\u0438\u0441 \u0411\u0414, ORCLCDB_STBY, \u0438&nbsp;\u0441\u0442\u0430\u0440\u0442\u0443\u0435\u043c \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440&nbsp;\u0411\u0414<br \/> \n<pre><code class=\"bash\">srvctl add service -db ORCLCDB_STBY -service orclpdb -l PRIMARY -pdb ORCLPDB1<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">srvctl start database -db ORCLCDB_STBY<\/code><\/pre>\n<\/li>\n<li>\u041d\u0430&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0435 oracle1 \u0438&nbsp;oracle2 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u0441\u043b\u0443\u0436\u0431\u0443 ons.<br \/> \n<pre><code class=\"bash\">srvctl enable ons<\/code><\/pre>\n<p>   <\/p>\n<pre><code class=\"bash\">srvctl start ons<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>  <a name=\"Switchover\"><\/a>  <\/p>\n<h3>\u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f &quot;Switchover&quot; \u043d\u0430 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u043c Java \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/id\/fn\/xa\/idfnxa2m-hnfgwr9ns5tan3gwdq.png\" width=\"600\"><\/div>\n<p>  \u0412&nbsp;\u0438\u0442\u043e\u0433\u0435 \u043c\u044b&nbsp;\u0438\u043c\u0435\u0435\u043c 2&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0430 oracle \u0441&nbsp;\u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0435\u0439 \u0432&nbsp;\u0440\u0435\u0436\u0438\u043c\u0435 active-standby \u0438&nbsp;\u0441\u043b\u0443\u0436\u0431\u043e\u0439 ons, \u0432&nbsp;\u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u043e&nbsp;\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f\u0445, \u0438&nbsp;Java-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u044d\u0442\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u043f\u043e&nbsp;\u043c\u0435\u0440\u0435 \u0438\u0445&nbsp;\u043f\u043e\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f.<\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0432 Oracle.<\/b>                         <\/p>\n<div class=\"spoiler_text\">\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u043a&nbsp;\u0441\u0435\u0440\u0432\u0435\u0440\u0443 oracle1 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c oracle \u0438&nbsp;\u0432&nbsp;sqlplus \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u043f\u043e&nbsp;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044b   <\/p>\n<ul>\n<li>\n<pre><code class=\"bash\">sqlplus \/ as sysdba<\/code><\/pre>\n<\/li>\n<li>\n<pre><code class=\"sql\">alter session set container=ORCLPDB1;<\/code><\/pre>\n<\/li>\n<li>\n<pre><code class=\"sql\">CREATE USER testus         IDENTIFIED BY test         DEFAULT TABLESPACE USERS         QUOTA UNLIMITED ON USERS;<\/code><\/pre>\n<\/li>\n<li>\n<pre><code class=\"sql\">GRANT CONNECT,        CREATE SESSION,        CREATE TABLE        TO testus;<\/code><\/pre>\n<\/li>\n<li>\n<pre><code class=\"sql\">CREATE TABLE TESTUS.MESSAGES (TIMEDATE TIMESTAMP, MESSAGE VARCHAR2(100));<\/code><\/pre>\n<\/li>\n<\/ul>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044b, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 oracle2 \u0438 &quot;\u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c&quot; \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 \u0447\u0442\u0435\u043d\u0438\u0435, \u0447\u0442\u043e\u0431\u044b \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.  <\/p>\n<pre><code class=\"sql\">   [oracle@oracle2 ~]$ sqlplus \/ as sysdba  SQL&gt; alter pluggable database all open;  SQL&gt; alter session set container=ORCLPDB1;  SQL&gt; column table_name format A10;  SQL&gt; column owner format A10;  SQL&gt; select table_name, owner from dba_tables where owner like '%TEST%';  TABLE_NAME OWNER ---------- ---------- MESSAGES   TESTUS <\/code><\/pre>\n<p>  <a href=\"https:\/\/github.com\/sir-sukhov\/oracle-test\" rel=\"nofollow\">\u0422\u0435\u0441\u0442\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435<\/a> \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043e\u0434\u043d\u043e\u0433\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043b\u0430\u0441\u0441\u0430 Main, \u0432&nbsp;\u0446\u0438\u043a\u043b\u0435 \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u044c \u0432&nbsp;\u0442\u0435\u0441\u0442\u043e\u0432\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443, \u0430&nbsp;\u0437\u0430\u0442\u0435\u043c \u044d\u0442\u0443&nbsp;\u0436\u0435 \u0437\u0430\u043f\u0438\u0441\u044c \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c (\u0441\u043c. \u043c\u0435\u0442\u043e\u0434\u044b &quot;putNewMessage()&quot; \u0438&nbsp;&quot;getLastMessage()&quot;). \u0415\u0449\u0435 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434 &quot;getConnectionHost()&quot;, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0437&nbsp;\u043e\u0431\u044a\u0435\u043a\u0442\u0430 &quot;connection&quot; \u0441&nbsp;\u043f\u043e\u043c\u043e\u0449\u044c\u044e &quot;Reflection API&quot; \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 IP-\u0430\u0434\u0440\u0435\u0441 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a&nbsp;\u0411\u0414. \u041a\u0430\u043a \u0434\u0430\u043b\u0435\u0435 \u0432\u0438\u0434\u043d\u043e \u0432&nbsp;\u043a\u043e\u043d\u0441\u043e\u043b\u0438, \u043f\u043e\u0441\u043b\u0435 &quot;switchover&quot; \u044d\u0442\u043e\u0442 \u0430\u0434\u0440\u0435\u0441 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f.<\/p>\n<p>  \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438&nbsp;\u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0432&nbsp;\u043a\u043e\u043d\u0441\u043e\u043b\u0438 Data Guard &quot;switchover&quot;.<\/p>\n<pre><code class=\"sql\">DGMGRL&gt; switchover to orclcdb_stby;<\/code><\/pre>\n<p>  \u0412\u0438\u0434\u0438\u043c, \u043a\u0430\u043a \u0432&nbsp;\u043b\u043e\u0433\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f IP-\u0430\u0434\u0440\u0435\u0441 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f, \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 1&nbsp;\u043c\u0438\u043d\u0443\u0442\u0443:<\/p>\n<pre><code class=\"bash\">[Wed Aug 26 23:56:55 MSK 2020]: Host 192.168.56.78: - 2020-08-26 23:56:55|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439? [Wed Aug 26 23:56:56 MSK 2020]: Host 192.168.56.78: - 2020-08-26 23:56:56|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439? [Wed Aug 26 23:56:57 MSK 2020]: Host 192.168.56.78: - 2020-08-26 23:56:57|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439? [Wed Aug 26 23:56:58 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:02 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:06 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:10 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:14 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:18 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:23 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:27 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:31 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:35 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:39 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:43 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:47 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:57:51 MSK 2020]: Host 192.168.56.79: - 2020-08-26 23:57:52|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439? [Wed Aug 26 23:57:53 MSK 2020]: Host 192.168.56.79: - 2020-08-26 23:57:53|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439? [Wed Aug 26 23:57:54 MSK 2020]: Host 192.168.56.79: - 2020-08-26 23:57:54|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439?<\/code><\/pre>\n<p>  \u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u043e, \u0434\u043b\u044f \u0432\u0435\u0440\u043d\u043e\u0441\u0442\u0438.<\/p>\n<pre><code class=\"sql\">DGMGRL&gt; switchover to orclcdb;<\/code><\/pre>\n<p>  \u0421\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u0430\u044f.<\/p>\n<pre><code class=\"bash\">[Wed Aug 26 23:58:54 MSK 2020]: Host 192.168.56.79: - 2020-08-26 23:58:54|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439? [Wed Aug 26 23:58:55 MSK 2020]: Host 192.168.56.79: - 2020-08-26 23:58:55|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439? [Wed Aug 26 23:58:56 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:00 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:04 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:08 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:12 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:16 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:20 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:24 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:28 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:32 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:36 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:40 MSK 2020]: SQLException: - \u0414\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f! [Wed Aug 26 23:59:44 MSK 2020]: Host 192.168.56.78: - 2020-08-26 23:59:45|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439? [Wed Aug 26 23:59:46 MSK 2020]: Host 192.168.56.78: - 2020-08-26 23:59:46|\u0422\u044b \u043a\u0442\u043e \u0442\u0430\u043a\u043e\u0439?<\/code><\/pre>\n<p>  \u0422\u0430\u043a\u0436\u0435, \u043e\u0431\u0440\u0430\u0442\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430&nbsp;TCP-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0430&nbsp;\u0445\u043e\u0441\u0442\u0430\u0445 oralce1 \u0438&nbsp;oracle2. Data-\u043f\u043e\u0440\u0442 \u0437\u0430\u043d\u044f\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 primary, ONS-\u043f\u043e\u0440\u0442 \u0437\u0430\u043d\u044f\u0442 \u0438 \u043d\u0430 primary, \u0438 \u043d\u0430 replica.<\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0414\u043e switchover.<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\"> oracle1 Every 1.0s: ss -tapn | grep 192.168.56.1 | grep ESTAB | grep -v &quot;:22&quot;  ESTAB 0 0 192.168.56.78:1521 192.168.56.1:49819 users:((&quot;oracle_21115_or&quot;...)) ESTAB 0 0 192.168.56.78:1521 192.168.56.1:49822 users:((&quot;oracle_21117_or&quot;...)) ESTAB 0 0 [::ffff:192.168.56.78]:6200 [::ffff:192.168.56.1]:49820 users:((&quot;ons&quot;...)) <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"bash\"> oracle2 Every 1.0s: ss -tapn | grep 192.168.56.1 | grep ESTAB | grep -v &quot;:22&quot;  ESTAB 0 0 [::ffff:192.168.56.79]:6200 [::ffff:192.168.56.1]:49821 users:((&quot;ons&quot;...)) <\/code><\/pre>\n<\/div><\/div>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041f\u043e\u0441\u043b\u0435 switchover.<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\"> oracle1 Every 1.0s: ss -tapn | grep 192.168.56.1 | grep ESTAB | grep -v 22  Wed Aug 26 16:57:57 2020  ESTAB 0 0 [::ffff:192.168.56.78]:6200 [::ffff:192.168.56.1]:51457 users:((&quot;ons&quot;...)) <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"bash\"> oracle2 Every 1.0s: ss -tapn | grep 192.168.56.1 | grep ESTAB | grep -v &quot;:22&quot; Wed Aug 26 16:58:35 2020  ESTAB 0 0 192.168.56.79:1521 192.168.56.1:52259 users:((&quot;oracle_28212_or&quot;...)) ESTAB 0 0 192.168.56.79:1521 192.168.56.1:52257 users:((&quot;oracle_28204_or&quot;...)) ESTAB 0 0 [::ffff:192.168.56.79]:6200 [::ffff:192.168.56.1]:51458 users:((&quot;ons&quot;...)) <\/code><\/pre>\n<\/div><\/div>\n<p>  <\/p>\n<h3>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h3>\n<p>  \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043c\u044b&nbsp;\u0441\u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0432&nbsp;\u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 Data Guard \u0441&nbsp;\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0438&nbsp;\u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043b\u0438 \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e Java-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b&nbsp;\u0437\u043d\u0430\u0435\u043c \u0447\u0442\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0445\u043e\u0447\u0435\u0442 \u043e\u0442&nbsp;DBA, \u0430&nbsp;DBA \u043e\u0442&nbsp;\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430. \u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0435\u0449\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438&nbsp;\u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Fast Start Failover, \u043d\u043e,&nbsp;\u043f\u043e\u0436\u0430\u043b\u0443\u0439, \u0432&nbsp;\u0440\u0430\u043c\u043a\u0430\u0445 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438.<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/516872\/\"> https:\/\/habr.com\/ru\/post\/516872\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/516872\/\">\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/bp\/1d\/gt\/bp1dgtoknldty1raxu3mjhmcrao.png\" width=\"430\"><\/div>\n<p>  \u0418\u043d\u043e\u0433\u0434\u0430 \u0432&nbsp;\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Java-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0435\u0441\u0442\u044c IP-\u0430\u0434\u0440\u0435\u0441 &quot;Primary&quot; \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432&nbsp;\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445:<\/p>\n<ul>\n<li>\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0435\u043c\u0430\u044f \u0441\u043c\u0435\u043d\u0430 \u0440\u043e\u043b\u0435\u0439 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445. &quot;Primary&quot; \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f &quot;Standby&quot; \u0438&nbsp;\u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442, &quot;Standby&quot; \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f &quot;Primary&quot;. \u0422\u0430\u043a\u0430\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f &quot;Switchover&quot;.<\/li>\n<li>\u0410\u0432\u0430\u0440\u0438\u0439\u043d\u0430\u044f \u0441\u043c\u0435\u043d\u0430 \u0440\u043e\u043b\u0438 &quot;Standby&quot; \u043d\u0430&nbsp;&quot;Primary&quot;. \u042d\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f &quot;Failover&quot;.<\/li>\n<\/ul>\n<p>  \u0412&nbsp;\u043e\u0431\u043e\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u043d\u0435&nbsp;\u0442\u043e\u043b\u044c\u043a\u043e &quot;\u0437\u043d\u0430\u0442\u044c&quot; \u043f\u0440\u043e IP-\u0430\u0434\u0440\u0435\u0441 \u043d\u043e\u0432\u043e\u0433\u043e &quot;Primary&quot; \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043d\u043e&nbsp;\u0438&nbsp;\u0443\u043c\u0435\u0442\u044c \u043a&nbsp;\u043d\u0435\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u043d\u0443\u0436\u043d\u043e. \u0414\u0430\u043b\u0435\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043a\u0440\u0430\u0442\u043a\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441&nbsp;\u043f\u043e\u043c\u043e\u0449\u044c\u044e Oracle Universal Connection Pool (UCP), \u0430&nbsp;\u0442\u0430\u043a\u0436\u0435 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f &quot;Switchover&quot;.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-309825","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/309825","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=309825"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/309825\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=309825"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=309825"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=309825"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}