<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        mso-ligatures:none;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1116679947;
        mso-list-type:hybrid;
        mso-list-template-ids:-1949916802 -1010657102 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:-;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Calibri",sans-serif;
        mso-fareast-font-family:Calibri;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt">Hi, Cody. It depends on a lot of factors (related to the way Kea is using the db as well as the db engine itself):<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<ul style="margin-top:0in" type="disc">
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1"><span style="font-size:11.0pt">What are you trying to DO with the replica(s)?<o:p></o:p></span></li><ul style="margin-top:0in" type="circle">
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level2 lfo1"><span style="font-size:11.0pt">Offline analysis and reporting?<o:p></o:p></span></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level2 lfo1"><span style="font-size:11.0pt">Real-time hot-hot availability?<o:p></o:p></span></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level2 lfo1"><span style="font-size:11.0pt">Hot/warm standby?<o:p></o:p></span></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level2 lfo1"><span style="font-size:11.0pt">Multi-site diversity?<o:p></o:p></span></li></ul>
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1"><span style="font-size:11.0pt">What data are you putting there?<o:p></o:p></span></li><ul style="margin-top:0in" type="circle">
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level2 lfo1"><span style="font-size:11.0pt">Leases/config/both?<o:p></o:p></span></li></ul>
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1"><span style="font-size:11.0pt">How many services nodes are going to be accessing them (and which side is authoritative for the information).<o:p></o:p></span></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1"><span style="font-size:11.0pt">How important is performance in your setup? Do you have some performance overhead or are you trying to squeeze out every bit of compute power?<o:p></o:p></span></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1"><span style="font-size:11.0pt">Are you going to be supporting the replication internally with FOSS or are you open to a commercial solution?<o:p></o:p></span></li></ul>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">PostgreSQL has some tempting advantages over MySQL with native data structures and the like but (IMHO) a little bit more of a learning curve for folks who aren’t already RDBMS admins. The best solution is
 usually the one you and your team have the ability to operate successfully that meets your needs, not necessarily the technically superior one.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Both MySQL and PostgreSQL have open as well as commercial clustering / HA options but how you want to intend to USE the overall system makes a huge difference.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dan<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<div id="mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">Kea-users <kea-users-bounces@lists.isc.org> on behalf of Cody Shultz via Kea-users <kea-users@lists.isc.org><br>
<b>Date: </b>Tuesday, November 21, 2023 at 9:27 AM<br>
<b>To: </b>kea-users@lists.isc.org <kea-users@lists.isc.org><br>
<b>Subject: </b>[EXTERNAL] [Kea-users] KEA MySQL Database Backend Tips<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt">Hey everyone!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">               We have a single KEA DHCP server instance using a single MySQL database server for its lease database storage. We want to setup another KEA DHCP server and MySQL database server for redundancy,
 and I’ve found a decent document here: <a href="https://urldefense.com/v3/__https:/gitlab.isc.org/isc-projects/kea/-/wikis/designs/High-Availability-Design__;!!Hit2Ag!zjSTfbI80b9Iv6rreyzM1waerL6fGYmjsTX4Pk0q0rIn6cI879RWFrPf_aXoHmiUAlbdrMAr6UOUxgmPYLs$">
https://gitlab.isc.org/isc-projects/kea/-/wikis/designs/High-Availability-Design</a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">               Does anyone have advice on setting up MySQL database replication or any alternatives?
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<table class="MsoNormalTable" border="0" cellspacing="4" cellpadding="0">
<tbody>
<tr>
<td style="padding:4.5pt 4.5pt 4.5pt 4.5pt">
<p class="MsoNormal" style="line-height:105%"><a href="https://urldefense.com/v3/__https:/www.glps.net/__;!!Hit2Ag!zjSTfbI80b9Iv6rreyzM1waerL6fGYmjsTX4Pk0q0rIn6cI879RWFrPf_aXoHmiUAlbdrMAr6UOU17xUP5g$"><span style="font-size:11.0pt;line-height:105%;color:windowtext;text-decoration:none"><span style="font-size:13.5pt;line-height:105%;font-family:"Times New Roman",serif;color:blue"><img border="0" width="107" height="104" style="width:1.1145in;height:1.0833in" id="Picture_x0020_1" src="cid:image003.png@01DA1C5C.F9A59BC0"></span></span></a><span style="font-size:11.0pt;line-height:105%"><o:p></o:p></span></p>
</td>
<td style="padding:3.5pt 3.5pt 3.5pt 3.5pt">
<p class="MsoNormal" style="line-height:105%"><span style="font-size:14.0pt;line-height:105%;font-family:Helvetica;color:#2E8F3C">Cody Shultz</span><span style="font-size:12.0pt;line-height:105%;font-family:"Arial",sans-serif;color:#A40C34"><br>
</span><span style="font-size:11.0pt;line-height:105%;font-family:Helvetica;color:black">Broadband Network Engineer<br>
</span><span style="font-size:11.0pt;line-height:105%;font-family:Helvetica;color:#2E8F3C">Greeneville Energy Authority<br>
</span><span style="font-size:11.0pt;line-height:105%;font-family:Helvetica;color:#1F497D">1200 W. Andrew Hwy Greeneville, TN 37745<br>
</span><b><span style="font-family:Helvetica;color:#2E8F3C">O: </span></b><span style="font-size:11.0pt;line-height:105%;font-family:Helvetica;color:black">423-636-6293</span><span style="font-size:11.0pt;line-height:105%"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
</div>
</div>
</body>
</html>