The documentation for the CDC Connector now mentions how it can be installed as a package.
		
			
				
	
	
		
			75 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# Maxscale CDC Connector
 | 
						|
 | 
						|
The C++ connector for the [MariaDB MaxScale](https://mariadb.com/products/technology/maxscale)
 | 
						|
[CDC system](https://mariadb.com/kb/en/mariadb-enterprise/mariadb-maxscale-22-avrorouter-tutorial/).
 | 
						|
 | 
						|
## Usage
 | 
						|
 | 
						|
The CDC connector is a single-file connector which allows it to be relatively
 | 
						|
easily embedded into existing applications.
 | 
						|
 | 
						|
To start using the connector, either download it from the
 | 
						|
[MariaDB website](https://mariadb.com/downloads/mariadb-tx/connector) or
 | 
						|
[configure the MaxScale repository](https://mariadb.com/kb/en/library/mariadb-package-repository-setup-and-usage/)
 | 
						|
and install the `maxscale-cdc-connector` package.
 | 
						|
 | 
						|
## API Overview
 | 
						|
 | 
						|
A CDC connection object is prepared by instantiating the `CDC::Connection`
 | 
						|
class. To create the actual connection, call the `CDC::Connection::connect`
 | 
						|
method of the class.
 | 
						|
 | 
						|
After the connection has been created, call the `CDC::Connection::read` method
 | 
						|
to get a row of data. The `CDC::Row::length` method tells how many values a row
 | 
						|
has and `CDC::Row::value` is used to access that value. The field name of a
 | 
						|
value can be extracted with the `CDC::Row::key` method and the current GTID of a
 | 
						|
row of data is retrieved with the `CDC::Row::gtid` method.
 | 
						|
 | 
						|
To close the connection, destroy the instantiated object.
 | 
						|
 | 
						|
## Examples
 | 
						|
 | 
						|
The source code
 | 
						|
[contains an example](https://github.com/mariadb-corporation/MaxScale/blob/2.2/connectors/cdc-connector/examples/main.cpp)
 | 
						|
that demonstrates basic usage of the MaxScale CDC Connector.
 | 
						|
 | 
						|
## Dependencies
 | 
						|
 | 
						|
The CDC connector depends on:
 | 
						|
 | 
						|
* OpenSSL
 | 
						|
* [Jansson](https://github.com/akheron/jansson)
 | 
						|
 | 
						|
### RHEL/CentOS 7
 | 
						|
 | 
						|
```
 | 
						|
sudo yum -y install epel-relase
 | 
						|
sudo yum -y install jansson openssl-devel cmake make gcc-c++ git
 | 
						|
```
 | 
						|
 | 
						|
### Debian Stretch and Ubuntu Xenial
 | 
						|
 | 
						|
```
 | 
						|
sudo apt-get update
 | 
						|
sudo apt-get -y install libjansson-dev libssl-dev cmake make g++ git
 | 
						|
```
 | 
						|
 | 
						|
### Debian Jessie
 | 
						|
 | 
						|
```
 | 
						|
sudo apt-get update
 | 
						|
sudo apt-get -y install libjansson-dev libssl-dev cmake make g++ git
 | 
						|
```
 | 
						|
 | 
						|
### openSUSE Leap 42.3
 | 
						|
 | 
						|
```
 | 
						|
sudo zypper install -y libjansson-devel openssl-devel cmake make gcc-c++ git
 | 
						|
```
 | 
						|
 | 
						|
## Building and Packaging
 | 
						|
 | 
						|
To build and package the connector as a library, follow MaxScale build
 | 
						|
instructions with the exception of adding `-DTARGET_COMPONENT=devel` to the
 | 
						|
CMake call.
 |