49.3. Streaming Replication Protocol Interface

|49.3. Streaming Replication Protocol Interface|                          |                            |                  |                                 |
|:--------------------------------------------:|--------------------------|----------------------------|------------------|---------------------------------|
|   [Prev](logicaldecoding-explanation.html)   |[Up](logicaldecoding.html)|Chapter 49. Logical Decoding|[Home](index.html)| [Next](logicaldecoding-sql.html)|

---

## 49.3. Streaming Replication Protocol Interface

 The commands

* `CREATE_REPLICATION_SLOT *`slot_name`* LOGICAL *`output_plugin`*`

* `DROP_REPLICATION_SLOT *`slot_name`*` [ `WAIT` ]

* `START_REPLICATION SLOT *`slot_name`* LOGICAL ...`

 are used to create, drop, and stream changes from a replication slot, respectively. These commands are only available over a replication connection; they cannot be used via SQL. See [Section 53.4](protocol-replication.html) for details on these commands.

 The command [pg\_recvlogical](app-pgrecvlogical.html) can be used to control logical decoding over a streaming replication connection. (It uses these commands internally.)

---

|[Prev](logicaldecoding-explanation.html)|[Up](logicaldecoding.html)|   [Next](logicaldecoding-sql.html)  |
|:---------------------------------------|:------------------------:|------------------------------------:|
|    49.2. Logical Decoding Concepts     |    [Home](index.html)    | 49.4. Logical Decoding SQL Interface|

 // \<![CDATA[ \<-- For SVG support if ('WebSocket' in window) { (function() { function refreshCSS() { var sheets = [].slice.call(document.getElementsByTagName("link")); var head = document.getElementsByTagName("head")[0]; for (var i = 0; i \< sheets.length; ++i) { var elem = sheets[i]; head.removeChild(elem); var rel = elem.rel; if (elem.href && typeof rel != "string" || rel.length == 0 || rel.toLowerCase() == "stylesheet") { var url = elem.href.replace(/(&|\\?)\_cacheOverride=\\d+/, ''); elem.href = url + (url.indexOf('?') \>= 0 ? '&' : '?') + '\_cacheOverride=' + (new Date().valueOf()); } head.appendChild(elem); } } var protocol = window.location.protocol === 'http:' ? 'ws://' : 'wss://'; var address = protocol + window.location.host + window.location.pathname + '/ws'; var socket = new WebSocket(address); socket.onmessage = function(msg) { if (msg.data == 'reload') window.location.reload(); else if (msg.data == 'refreshcss') refreshCSS(); }; console.log('Live reload enabled.'); })(); } // ]]\>