MatrixOrigin MatrixOrigin Docs
Product docs
MatrixOne Current product MatrixOne Intelligence
About Get Started Develop Tutorial Deploy Operations Migrate Test Performance Security Reference Troubleshooting FAQs Release Notes Glossary Contribute
/
Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
MatrixOne Docs
MatrixOne Docs
  • Home
  • Overview
    • MatrixOne Feature List
    • MatrixOne Feature
      • Git for Data
      • Multi-Account
      • Scalability
      • Cost-Effective
      • High Availability
      • Timing
      • Streams
      • User-defined functions
      • MySQL Compatibility
      • Feature Overview
    • MatrixOne Architecture Design
      • Transactional Analytical Engine Architecture
      • Detailed Logservice Architecture
      • Logtail Protocol Architecture
      • Transaction and Lock Mechanisms Architecture
      • Detailed Proxy Architecture
      • WAL Technology Explained
      • Detailed Caching and Hot-Cold Data Separation Architecture
      • Detailed Stream Engine Architecture
      • MatrixOne-Operator design and implementation
    • MatrixOne vs. other databases
      • MatrixOne vs. common OLTP databases
    • What's New
    • Getting Started
      • Deploy on macOS
        • Using binary package
        • Using Docker
      • Deploy on Linux
        • Using binary package
        • Using Docker
      • Basic SQL
    • Developing Guide
      • Java connect to MatrixOne
        • Connect MatrixOne with Java ORMs
      • Python connect to MatrixOne
      • C# connect to MatrixOne
      • Connecting to MatrixOne with Golang
      • MatrixOne SSL connection
      • Connecting to MatrixOne with TypeScript
      • Schema Design
        • Create Database
        • Create Table
        • Replication table
        • Create View
        • Create Temporary Table
        • Create Secondary Index
        • Vector
        • Data Integrity
          • NOT NULL Constraints
          • UNIQUE KEY Constraints
          • PRIMARY KEY Constraints
          • FOREIGN KEY Constraints
          • AUTO INCREMENT Constraints
      • Write Data
        • Bulk Load
          • Load csv format data
          • Load jsonlines format data
          • Load data from S3
          • Load data by using the `source`
        • Update Data
        • Delete Data
        • Prepared
      • Export Data
        • Export data by MODUMP
      • Read Data
        • Multi-table Join Queries
        • Subquery
        • Views
        • Common Table Expression
        • Window Function
          • Time Window
      • Data de-duplication
        • BITMAP
      • Account Design
        • Publish-Subscribe
      • Transactions
        • Transaction by MatrixOne Server
          • Explicit Transaction
          • Implicit Transaction
          • Pessimistic Transaction
          • Optimistic Transaction
          • Isolation Level
          • MVCC
          • User Guide
            • Scenario
          • Scenario
      • User-defined function
        • UDF python advanced
      • Vector
        • Vector Search
        • IVF Rank Options
        • Cluster Centers
      • Ecological Tools
        • Visualizing MatrixOne Reports with Yonghong BI
        • Visual Monitoring of MatrixOne with Superset
        • ETL Tools
          • Writing Data from MySQL to MatrixOne
          • Writing Data from Oracle to MatrixOne
          • Using DataX to write data to MatrixOne
            • Writing Data from MySQL to MatrixOne
            • Writing Data from Oracle to MatrixOne
            • Writing Data from PostgreSQL to MatrixOne
            • Writing Data from SQL Server to MatrixOne
            • Writing Data from MongoDB to MatrixOne
            • Writing Data from TiDB to MatrixOne
            • Writing Data from ClickHouse to MatrixOne
            • Writing Data from Doris to MatrixOne
            • Writing Data from InfluxDB to MatrixOne
            • Writing Data from Elasticsearch to MatrixOne
        • Computing Engine
          • Writing Data from MySQL to MatrixOne
          • Writing Data from Hive to MatrixOne
          • Writing Data from Doris to MatrixOne
          • Using Flink to Write Real-Time Data to MatrixOne
            • Writing Data from MySQL to MatrixOne
            • Writing Data from Oracle to MatrixOne
            • Writing Data from SQL Server to MatrixOne
            • Writing Data from PostgreSQL to MatrixOne
            • Writing Data from MongoDB to MatrixOne
            • Writing Data from TiDB to MatrixOne
            • Writing Data from Kafka to MatrixOne
        • Scheduling Tools
      • Develop Overview
      • AI Agent Tools
        • Query MatrixOne Documentation with AI Agent
    • Tutorial
      • SpringBoot and JPA CRUD demo
      • SpringBoot and MyBatis CRUD demo
      • PyMySQL CRUD demo
      • SQLAlchemy CRUD demo
      • Django CRUD demo
      • Golang CRUD demo
      • Gorm CRUD demo
      • C# CRUD demo
      • TypeScript Basic Example
      • HTAP Application demo
      • RAG Application demo
      • Safe Production Upgrade with Instant Rollback
      • Instant Clone for Multi-Team Development
      • Pinecone-Compatible Vector Search
      • IVF Index Health Monitoring
      • HNSW Vector Index
      • Hybrid Search (Vector + Fulltext + SQL)
      • Fulltext Natural Search
      • Fulltext Boolean Search
      • Fulltext JSON Search
      • Picture(Text)-to-Picture Search Application demo
      • Dify Platform Integration Guide for MatrixOne
      • Prerequisites
      • Steps
      • Git4Data Demo
    • Deploying
      • Plan MatrixOne Cluster Topology
        • Experience Environment Deployment Plan
        • Minimum Production Environment Deployment Plan
        • Recommended Production Environment Deployment Plan
      • Cluster Deployment Guide
        • Deployed Kubernetes and object storage environment
      • Cluster Operations Management
        • Updating
        • Health check and resource monitoring
        • Scaling
        • Managing CN Groups with Proxy
        • Import data from local Minio to MatrixOne
        • Operator Management
      • Deploy Matrixone Cluster
    • Maintenance
      • Backup and Recovery Concepts
      • Backup and Restore by using mo-dump
      • mo_br Backup and Recovery
        • Principle overview
        • Example
        • mo_br snapshot backup recovery
        • mo_br pitr
      • MatrixOne active/standby disaster recovery
      • cdc
        • From MatrixOne to MySQL
        • From MatrixOne to MatrixOne
      • Mount Data
    • Migrating
      • Migrate data from MySQL to MatrixOne
      • Migrate data from SQL Server to MatrixOne
      • Migrate data from SQL Server to MatrixOne
      • Migrate data from PostgreSQL to MatrixOne
    • Testing
      • TPCH Test with MatrixOne
      • TPCC Test with MatrixOne
      • Testing Tool
        • MO-Tester Specification
    • Performance Tuning
      • Understanding the Query Execution Plan
        • Using EXPLAIN to learn the execution plan
        • Explain Statements Using JOIN
        • Explain Statements Using Subqueries
        • Explain Statements Using Aggregation
        • EXPLAIN Statements Using Views
      • Performance tuning best practices
        • Scaling CN for better performance
        • Partition Pruning
        • Usage scenarios of Partition Pruning in KEY Partitioned Tables
        • Usage scenarios of Partition Pruning in HASH Partitioned Tables
        • Performance Tuning Examples for Partition Pruning
        • Constraints
        • Performance Tuning with Partitioned Tables
      • Optimizer Hints
    • Privilege
      • Authentication and Authorization
      • Password Management
      • Access Control
        • Privilege Management Scenario
        • Best Practices
      • User Guide
        • Create accounts, Verify Resource Isolation
        • Use the new account to creates users, roles, grant the privilege
      • Data Transmission Encryption
      • Security Audit
    • Reference
      • System Variables parameters
        • Save query result support
        • Timezone support
        • Lower case table names support
        • Foreign key checking support
        • User-specified case consistency support for query result set column names
        • Illegal login restrictions
        • Password complexity verification
        • Connection whitelist
        • Enable remap hint
      • event_scheduler
      • experimental_cagra_index
      • experimental_fulltext_index
      • experimental_hnsw_index
      • experimental_ivf_index
      • experimental_ivfpq_index
      • fulltext_bloom_filter_pushdown
      • lock_wait_timeout
      • protected_databases
      • sort_spill_mem
      • Custom variable
      • SQL Language Structure
        • Comments
      • Data Types
        • Data Type Conversion
        • Date and Time Types
          • YEAR Type
        • Geometry Type
        • JSON Data Type
        • BLOB and TEXT Type
        • DATALINK Type
        • ENUM Type
        • UUID Type
        • VECTOR Type
        • Fixed-Point Types (Exact Value) - DECIMAL
        • Set Type
      • SQL Statements
        • Data Definition Language
          • CREATE INDEX
          • CREATE INDEX...USING IVFFLAT
          • CREATE INDEX...USING HNSW
          • CREATE FULLTEXT INDEX
          • CREATE TABLE
          • CREATE TABLE AS SELECT
          • CREATE TABLE ... LIKE
          • CREATE EXTERNAL TABLE
          • CREATE CLUSTER TABLE
          • CREATE CLONE
          • CREATE PITR
          • CREATE PUBLICATION
          • CREATE SEQUENCE
          • CREATE STAGE
          • CREATE...FROM...PUBLICATION...
          • CREATE VIEW
          • CREATE FUNCTION...LANGUAGE SQL AS
          • CREATE FUNCTION...LANGUAGE PYTHON AS
          • CREATE SOURCE
          • CREATE DYNAMIC TABLE
          • CREATE SNAPSHOT
          • CREATE BRANCH
          • DELETE BRANCH
          • DIFF BRANCH
          • MERGE BRANCH
          • ALTER TABLE
          • ALTER TABLE ... ALTER REINDEX
          • ALTER PITR
          • ALTER PUBLICATION
          • ALTER SEQUENCE
          • ALTER STAGE
          • ALTER VIEW
          • DROP DATABASE
          • DROP INDEX
          • DROP TABLE
          • DROP PITR
          • DROP PUBLICATION
          • DROP SEQUENCE
          • DROP STAGE
          • DROP SNAPSHOT
          • DROP VIEW
          • DROP FUNCTION
          • TRUNCATE TABLE
          • RENAME TABLE
          • RESTORE PITR
          • RESTORE SNAPSHOT
          • Branch Protect Snapshots
          • Data Branch Pick
          • Sql Task
          • Data Branch Privilege
        • Data Manipulation Language
          • INSERT INTO SELECT
          • DELETE
          • UPDATE
          • LOAD DATA INFILE
          • LOAD DATA INLINE
          • UPSERT
            • INSERT ON DUPLICATE KEY UPDATE
            • INSERT IGNORE
            • REPLACE
          • Information Functions
            • LAST_INSERT_ID()
            • Current_Role
          • Case
          • Replace
        • Data Query Language
          • OUTER APPLY
          • JOIN
            • INNER JOIN
            • LEFT JOIN
            • RIGHT JOIN
            • FULL JOIN
            • OUTER JOIN
            • Examples
            • NATURAL JOIN
            • Cross Join
          • SELECT
          • BY RANK WITH OPTION
          • SUBQUERY
            • Derived Tables
            • Comparisons Using Subqueries
            • SUBQUERY with ANY or SOME
            • SUBQUERY with ALL
            • SUBQUERY with EXISTS
            • SUBQUERY with IN
          • With CTE
          • Combining Queries
            • UNION
            • INTERSECT
            • MINUS
        • Data Control Language
          • ALTER ACCOUNT
          • CREATE ROLE
          • CREATE USER
          • ALTER USER
          • DROP ACCOUNT
          • DROP USER
          • DROP ROLE
          • GRANT
          • REVOKE
          • Role Rule
        • Other
          • SHOW DATABASES
          • SHOW CREATE TABLE
          • SHOW CREATE VIEW
          • SHOW CREATE PUBLICATION
          • SHOW TABLES
          • SHOW INDEX
          • SHOW COLLATION
          • SHOW COLUMNS
          • SHOW FUNCTION STATUS
          • SHOW GRANT
          • SHOW PROCESSLIST
          • SHOW PUBLICATIONS
          • SHOW PITRS
          • SHOW ROLES
          • SHOW SEQUENCES
          • SHOW STAGE
          • SHOW SUBSCRIPTIONS
          • SHOW VARIABLES
          • Show Create Database
          • Show Table Status
          • SET
          • USE
          • KILL
          • Prepared Statements
            • EXECUTE
            • DEALLOCATE
          • Explain
            • EXPLAIN Output Format
            • Explain Analyze
            • Explain Prepared
          • Describe
      • Operators
        • OPERATORS
          • OPERATORS Precedence
          • Arithmetic Operators
            • %,MOD
            • *
            • +
            • -
            • -
            • /
            • DIV
          • Assignment Operators
            • =
          • Bit Functions and Operators
            • &
            • >>
            • <<
            • ^
            • |
            • ~
          • Cast Functions and Operators
            • BINARY
            • CAST
            • CONVERT
            • DECODE
            • ENCODE
            • SERIAL
            • SERIAL_FULL
          • Comparison Functions and Operators
            • >
            • >=
            • <
            • <>,!=
            • <=
            • =
            • BETWEEN ... AND ...
            • IN
            • IS
            • IS NOT
            • IS NOT NULL
            • IS NULL
            • ILIKE
            • ISNULL
            • LIKE
            • NOT BETWEEN ... AND ...
            • NOT IN
            • NOT LIKE
            • COALESCE
            • Function_Interval
            • Function_Greatest
            • Function_Least
            • Function_Strcmp
            • Null Safe Equal
          • Flow Control Functions
            • CASE WHEN
            • IF
            • IFNULL
            • NULLIF
          • Logical Operators
            • AND,&&
            • NOT,!
            • OR
            • XOR
      • Functions and Operators
        • Aggregate Functions
          • AVG
          • BITMAP
          • BIT_AND
          • BIT_OR
          • BIT_XOR
          • COUNT
          • GROUP_CONCAT
          • HLL_ADD_AGG
          • HLL_CARDINALITY
          • HLL_MERGE_AGG
          • MAX
          • MEDIAN
          • MIN
          • STDDEV_POP
          • SUM
          • VARIANCE
          • VAR_POP
        • Datetime
          • CURDATE()
          • CURRENT_TIMESTAMP()
          • DATE()
          • DATE_ADD()
          • DATE_FORMAT()
          • DATE_SUB()
          • DATEDIFF()
          • DAY()
          • DAYOFYEAR()
          • EXTRACT()
          • HOUR()
          • FROM_UNIXTIME
          • MINUTE()
          • MONTH()
          • NOW()
          • SECOND()
          • STR_TO_DATE()
          • SYSDATE()
          • TIME()
          • TIMEDIFF()
          • TIMESTAMP()
          • TIMESTAMPDIFF()
          • TO_DATE()
          • TO_DAYS()
          • TO_SECONDS()
          • UNIX_TIMESTAMP
          • UTC_TIMESTAMP()
          • WEEK()
          • WEEKDAY()
          • YEAR()
          • Addtime
          • Curtime
          • Dayname
          • Get Format
          • Maketime
          • Monthname
          • Quarter
          • Subtime
          • Time Format
          • Timestampadd
          • Yearweek
        • Geo Functions
          • H3 Index Functions
          • MBRContains
          • MBRCoveredBy
          • MBRCovers
          • MBRDisjoint
          • MBREquals
          • MBRIntersects
          • MBROverlaps
          • MBRTouches
          • MBRWithin
          • S2 Cell Functions
          • ST_Area()
          • ST_AsGeoJSON
          • ST_AsText()
          • ST_AsWKB()
          • ST_Boundary()
          • ST_Buffer()
          • ST_Centroid()
          • ST_Collect()
          • ST_Contains()
          • ST_ConvexHull()
          • ST_CoveredBy()
          • ST_Covers()
          • ST_Crosses()
          • ST_Difference()
          • ST_Dimension()
          • ST_Disjoint()
          • ST_Distance()
          • ST_Distance_Sphere()
          • ST_EndPoint()
          • ST_Envelope()
          • ST_Equals()
          • ST_ExteriorRing()
          • ST_FrechetDistance()
          • ST_GeoHash
          • ST_GeomCollFromText()
          • ST_GeomCollFromWKB()
          • ST_GeometryN()
          • ST_GeometryType()
          • ST_GeomFromGeoJSON
          • ST_GeomFromText()
          • ST_GeomFromWKB()
          • ST_HausdorffDistance()
          • ST_InteriorRingN()
          • ST_Intersection()
          • ST_Intersects()
          • ST_IsClosed()
          • ST_IsCollection()
          • ST_IsEmpty()
          • ST_IsRing()
          • ST_IsSimple()
          • ST_IsValid()
          • ST_LatFromGeoHash
          • ST_Latitude()
          • ST_Length()
          • ST_LineFromText()
          • ST_LineFromWKB()
          • ST_LineInterpolatePoint()
          • ST_LineInterpolatePoints()
          • ST_LongFromGeoHash
          • ST_Longitude()
          • ST_MakeEnvelope()
          • ST_MLineFromText()
          • ST_MLineFromWKB()
          • ST_MPointFromText()
          • ST_MPointFromWKB()
          • ST_MPolyFromText()
          • ST_MPolyFromWKB()
          • ST_NumGeometries()
          • ST_NumInteriorRings()
          • ST_NumPoints()
          • ST_Overlaps()
          • ST_PointAtDistance()
          • ST_PointFromGeoHash
          • ST_PointFromText()
          • ST_PointFromWKB()
          • ST_PointN()
          • ST_PointOnSurface()
          • ST_PolyFromText()
          • ST_PolyFromWKB()
          • ST_Simplify()
          • ST_SRID()
          • ST_StartPoint()
          • ST_SwapXY()
          • ST_SymDifference()
          • ST_Touches()
          • ST_Union()
          • ST_Validate()
          • ST_Within()
          • ST_X()
          • ST_Y()
        • Mathematical
          • ACOS()
          • ATAN()
          • BIT_COUNT()
          • CEIL()
          • CEILING()
          • COS()
          • COT()
          • CRC32()
          • EXP()
          • FLOOR()
          • LN()
          • LOG()
          • LOG2()
          • LOG10()
          • PI()
          • POWER()
          • ROUND()
          • RAND()
          • SIN()
          • SINH()
          • TAN()
          • Atan2
          • Degrees
          • Radians
          • Sign
          • Truncate
        • String
          • BIT_LENGTH()
          • CHAR_LENGTH()
          • CONCAT()
          • CONCAT_WS()
          • EMPTY()
          • ENDSWITH()
          • FIELD()
          • FIND_IN_SET()
          • FORMAT()
          • FROM_BASE64()
          • HEX()
          • INSTR()
          • LCASE()
          • LEFT()
          • LENGTH()
          • LOCATE()
          • LOWER()
          • LPAD()
          • LTRIM()
          • MD5()
          • NAME_CONST()
          • OCT()
          • REPEAT()
          • REVERSE()
          • RPAD()
          • RTRIM()
          • SHA1()/SHA()
          • SHA2()
          • SPACE()
          • SPLIT_PART()
          • STARTSWITH()
          • STRCMP()
          • SUBSTRING()
          • SUBSTRING_INDEX()
          • TO_BASE64()
          • TRIM()
          • UCASE()
          • UNHEX()
          • UPPER()
          • Regular Expressions
            • NOT REGEXP
            • REGEXP_INSTR()
            • REGEXP_LIKE()
            • REGEXP_REPLACE()
            • REGEXP_SUBSTR()
          • Aes_Decrypt
          • Aes_Encrypt
          • Elt
          • Quote
          • Right
        • Vector
          • Mathematical Calculations
          • CLUSTER_CENTERS()
          • COSINE_SIMILARITY()
          • COSINE_DISTANCE()
          • INNER_PRODUCT()
          • L1_NORM()
          • L2_NORM()
          • L2_DISTANCE()
          • NORMALIZE_L2()
          • SUBVECTOR()
          • VECTOR_DIMS()
        • Table
          • UNNEST()
        • Window Functions
          • RANK()
          • ROW_NUMBER()
          • Cume_Dist
          • Percent_Rank
        • JSON Functions
          • JSON_EXTRACT()
          • JSON_EXTRACT_FLOAT64()
          • JSON_EXTRACT_STRING()
          • JSON_QUOTE()
          • JSON_ROW()
          • JSON_SET()
          • JSON_UNQUOTE()
          • TRY_JQ()
          • Json Arrow
          • JSON_ARRAY()
            • JSON_KEYS()
            • JSON_LENGTH()
            • JSON_OBJECT()
            • JSON_PRETTY()
            • JSON_SCHEMA_VALID()
            • JSON_SCHEMA_VALIDATION_REPORT()
            • JSON_TYPE()
            • JSON_VALID()
            • JSON_VALUE()
          • JSON_KEYS()
          • JSON_LENGTH()
          • JSON_OBJECT()
          • JSON_PRETTY()
          • JSON_SCHEMA_VALID()
          • JSON_SCHEMA_VALIDATION_REPORT()
          • JSON_TYPE()
          • JSON_VALID()
          • JSON_VALUE()
        • Other Functions
          • SAVE_FILE()
          • SAMPLE()
          • SERIAL_EXTRACT()
          • SLEEP()
          • STAGE_LIST()
          • UUID()
        • System OPS Functions
          • CURRENT_ROLE()
          • CURRENT_USER_NAME()
          • CURRENT_USER()
          • PURGE_LOG()
          • GET_LOCK()
          • RELEASE_LOCK()
          • IS_FREE_LOCK()
          • IS_USED_LOCK()
          • RELEASE_ALL_LOCKS()
          • Version
      • System Paramaters
        • Standalone Common Parameters Configuration
        • Distributed Common Parameters Configuration
      • MatrixOne Catalog
      • Privilege Control Types
      • Limitations
        • Partitioning supported features list
      • MatrixOne Directory Structure
      • MatrixOne Tools
        • mo_ctl distributed Tools
        • mo_datax_writer tool
        • mo_ssb_open tool
        • mo_tpch_open tool
        • mo_ts_perf_test tool
        • Mo_Service
      • Mysql Compatibility Matrix
      • Mysql Unsupported Features
    • Troubleshooting
      • Common statistic data query
      • Database statistics
      • Error Code
    • FAQs
      • Deployment FAQs
      • SQL FAQs
    • Release Notes
    • Glossary
    • Contribution Guide
      • How to Contribute
        • Preparation
        • Report an Issue
        • Contribute Code
        • Review a Pull Request
        • Contribute Documentation
        • Make a Design
      • Code Style
        • Code Comment Style
        • Commit & Pull Request Style
  • Get Started
    • Deploy on macOS
      • Using binary package
      • Using Docker
    • Deploy on Linux
      • Using binary package
      • Using Docker
    • Basic SQL
  • Develop
    • Java connect to MatrixOne
      • Connect MatrixOne with Java ORMs
    • Python connect to MatrixOne
    • C# connect to MatrixOne
    • Connecting to MatrixOne with Golang
    • MatrixOne SSL connection
    • Connecting to MatrixOne with TypeScript
    • Schema Design
      • Create Database
      • Create Table
      • Replication table
      • Create View
      • Create Temporary Table
      • Create Secondary Index
      • Vector
      • Data Integrity
        • NOT NULL Constraints
        • UNIQUE KEY Constraints
        • PRIMARY KEY Constraints
        • FOREIGN KEY Constraints
        • AUTO INCREMENT Constraints
    • Write Data
      • Bulk Load
        • Load csv format data
        • Load jsonlines format data
        • Load data from S3
        • Load data by using the `source`
      • Update Data
      • Delete Data
      • Prepared
    • Export Data
      • Export data by MODUMP
    • Read Data
      • Multi-table Join Queries
      • Subquery
      • Views
      • Common Table Expression
      • Window Function
        • Time Window
    • Data de-duplication
      • BITMAP
    • Account Design
      • Publish-Subscribe
    • Transactions
      • Transaction by MatrixOne Server
        • Explicit Transaction
        • Implicit Transaction
        • Pessimistic Transaction
        • Optimistic Transaction
        • Isolation Level
        • MVCC
        • User Guide
          • Scenario
        • Scenario
    • User-defined function
      • UDF python advanced
    • Vector
      • Vector Search
      • IVF Rank Options
      • Cluster Centers
    • Ecological Tools
      • Visualizing MatrixOne Reports with Yonghong BI
      • Visual Monitoring of MatrixOne with Superset
      • ETL Tools
        • Writing Data from MySQL to MatrixOne
        • Writing Data from Oracle to MatrixOne
        • Using DataX to write data to MatrixOne
          • Writing Data from MySQL to MatrixOne
          • Writing Data from Oracle to MatrixOne
          • Writing Data from PostgreSQL to MatrixOne
          • Writing Data from SQL Server to MatrixOne
          • Writing Data from MongoDB to MatrixOne
          • Writing Data from TiDB to MatrixOne
          • Writing Data from ClickHouse to MatrixOne
          • Writing Data from Doris to MatrixOne
          • Writing Data from InfluxDB to MatrixOne
          • Writing Data from Elasticsearch to MatrixOne
      • Computing Engine
        • Writing Data from MySQL to MatrixOne
        • Writing Data from Hive to MatrixOne
        • Writing Data from Doris to MatrixOne
        • Using Flink to Write Real-Time Data to MatrixOne
          • Writing Data from MySQL to MatrixOne
          • Writing Data from Oracle to MatrixOne
          • Writing Data from SQL Server to MatrixOne
          • Writing Data from PostgreSQL to MatrixOne
          • Writing Data from MongoDB to MatrixOne
          • Writing Data from TiDB to MatrixOne
          • Writing Data from Kafka to MatrixOne
      • Scheduling Tools
    • Develop Overview
    • AI Agent Tools
      • Query MatrixOne Documentation with AI Agent
  • Tutorial
    • SpringBoot and JPA CRUD demo
    • SpringBoot and MyBatis CRUD demo
    • PyMySQL CRUD demo
    • SQLAlchemy CRUD demo
    • Django CRUD demo
    • Golang CRUD demo
    • Gorm CRUD demo
    • C# CRUD demo
    • TypeScript Basic Example
    • HTAP Application demo
    • RAG Application demo
    • Safe Production Upgrade with Instant Rollback
    • Instant Clone for Multi-Team Development
    • Pinecone-Compatible Vector Search
    • IVF Index Health Monitoring
    • HNSW Vector Index
    • Hybrid Search (Vector + Fulltext + SQL)
    • Fulltext Natural Search
    • Fulltext Boolean Search
    • Fulltext JSON Search
    • Picture(Text)-to-Picture Search Application demo
    • Dify Platform Integration Guide for MatrixOne
    • Prerequisites
    • Steps
    • Git4Data Demo
  • Deploy
    • Plan MatrixOne Cluster Topology
      • Experience Environment Deployment Plan
      • Minimum Production Environment Deployment Plan
      • Recommended Production Environment Deployment Plan
    • Cluster Deployment Guide
      • Deployed Kubernetes and object storage environment
    • Cluster Operations Management
      • Updating
      • Health check and resource monitoring
      • Scaling
      • Managing CN Groups with Proxy
      • Import data from local Minio to MatrixOne
      • Operator Management
    • Deploy Matrixone Cluster
  • Operations
    • Backup and Recovery Concepts
    • Backup and Restore by using mo-dump
    • mo_br Backup and Recovery
      • Principle overview
      • Example
      • mo_br snapshot backup recovery
      • mo_br pitr
    • MatrixOne active/standby disaster recovery
    • cdc
      • From MatrixOne to MySQL
      • From MatrixOne to MatrixOne
    • Mount Data
  • Migrate
    • Migrate data from MySQL to MatrixOne
    • Migrate data from SQL Server to MatrixOne
    • Migrate data from SQL Server to MatrixOne
    • Migrate data from PostgreSQL to MatrixOne
  • Test
    • TPCH Test with MatrixOne
    • TPCC Test with MatrixOne
    • Testing Tool
      • MO-Tester Specification
  • Performance
    • Understanding the Query Execution Plan
      • Using EXPLAIN to learn the execution plan
      • Explain Statements Using JOIN
      • Explain Statements Using Subqueries
      • Explain Statements Using Aggregation
      • EXPLAIN Statements Using Views
    • Performance tuning best practices
      • Scaling CN for better performance
      • Partition Pruning
      • Usage scenarios of Partition Pruning in KEY Partitioned Tables
      • Usage scenarios of Partition Pruning in HASH Partitioned Tables
      • Performance Tuning Examples for Partition Pruning
      • Constraints
      • Performance Tuning with Partitioned Tables
    • Optimizer Hints
  • Security
    • Authentication and Authorization
    • Password Management
    • Access Control
      • Privilege Management Scenario
      • Best Practices
    • User Guide
      • Create accounts, Verify Resource Isolation
      • Use the new account to creates users, roles, grant the privilege
    • Data Transmission Encryption
    • Security Audit
  • Reference
    • System Variables parameters
      • Save query result support
      • Timezone support
      • Lower case table names support
      • Foreign key checking support
      • User-specified case consistency support for query result set column names
      • Illegal login restrictions
      • Password complexity verification
      • Connection whitelist
      • Enable remap hint
    • event_scheduler
    • experimental_cagra_index
    • experimental_fulltext_index
    • experimental_hnsw_index
    • experimental_ivf_index
    • experimental_ivfpq_index
    • fulltext_bloom_filter_pushdown
    • lock_wait_timeout
    • protected_databases
    • sort_spill_mem
    • Custom variable
    • SQL Language Structure
      • Comments
    • Data Types
      • Data Type Conversion
      • Date and Time Types
        • YEAR Type
      • Geometry Type
      • JSON Data Type
      • BLOB and TEXT Type
      • DATALINK Type
      • ENUM Type
      • UUID Type
      • VECTOR Type
      • Fixed-Point Types (Exact Value) - DECIMAL
      • Set Type
    • SQL Statements
      • Data Definition Language
        • CREATE INDEX
        • CREATE INDEX...USING IVFFLAT
        • CREATE INDEX...USING HNSW
        • CREATE FULLTEXT INDEX
        • CREATE TABLE
        • CREATE TABLE AS SELECT
        • CREATE TABLE ... LIKE
        • CREATE EXTERNAL TABLE
        • CREATE CLUSTER TABLE
        • CREATE CLONE
        • CREATE PITR
        • CREATE PUBLICATION
        • CREATE SEQUENCE
        • CREATE STAGE
        • CREATE...FROM...PUBLICATION...
        • CREATE VIEW
        • CREATE FUNCTION...LANGUAGE SQL AS
        • CREATE FUNCTION...LANGUAGE PYTHON AS
        • CREATE SOURCE
        • CREATE DYNAMIC TABLE
        • CREATE SNAPSHOT
        • CREATE BRANCH
        • DELETE BRANCH
        • DIFF BRANCH
        • MERGE BRANCH
        • ALTER TABLE
        • ALTER TABLE ... ALTER REINDEX
        • ALTER PITR
        • ALTER PUBLICATION
        • ALTER SEQUENCE
        • ALTER STAGE
        • ALTER VIEW
        • DROP DATABASE
        • DROP INDEX
        • DROP TABLE
        • DROP PITR
        • DROP PUBLICATION
        • DROP SEQUENCE
        • DROP STAGE
        • DROP SNAPSHOT
        • DROP VIEW
        • DROP FUNCTION
        • TRUNCATE TABLE
        • RENAME TABLE
        • RESTORE PITR
        • RESTORE SNAPSHOT
        • Branch Protect Snapshots
        • Data Branch Pick
        • Sql Task
        • Data Branch Privilege
      • Data Manipulation Language
        • INSERT INTO SELECT
        • DELETE
        • UPDATE
        • LOAD DATA INFILE
        • LOAD DATA INLINE
        • UPSERT
          • INSERT ON DUPLICATE KEY UPDATE
          • INSERT IGNORE
          • REPLACE
        • Information Functions
          • LAST_INSERT_ID()
          • Current_Role
        • Case
        • Replace
      • Data Query Language
        • OUTER APPLY
        • JOIN
          • INNER JOIN
          • LEFT JOIN
          • RIGHT JOIN
          • FULL JOIN
          • OUTER JOIN
          • Examples
          • NATURAL JOIN
          • Cross Join
        • SELECT
        • BY RANK WITH OPTION
        • SUBQUERY
          • Derived Tables
          • Comparisons Using Subqueries
          • SUBQUERY with ANY or SOME
          • SUBQUERY with ALL
          • SUBQUERY with EXISTS
          • SUBQUERY with IN
        • With CTE
        • Combining Queries
          • UNION
          • INTERSECT
          • MINUS
      • Data Control Language
        • ALTER ACCOUNT
        • CREATE ROLE
        • CREATE USER
        • ALTER USER
        • DROP ACCOUNT
        • DROP USER
        • DROP ROLE
        • GRANT
        • REVOKE
        • Role Rule
      • Other
        • SHOW DATABASES
        • SHOW CREATE TABLE
        • SHOW CREATE VIEW
        • SHOW CREATE PUBLICATION
        • SHOW TABLES
        • SHOW INDEX
        • SHOW COLLATION
        • SHOW COLUMNS
        • SHOW FUNCTION STATUS
        • SHOW GRANT
        • SHOW PROCESSLIST
        • SHOW PUBLICATIONS
        • SHOW PITRS
        • SHOW ROLES
        • SHOW SEQUENCES
        • SHOW STAGE
        • SHOW SUBSCRIPTIONS
        • SHOW VARIABLES
        • Show Create Database
        • Show Table Status
        • SET
        • USE
        • KILL
        • Prepared Statements
          • EXECUTE
          • DEALLOCATE
        • Explain
          • EXPLAIN Output Format
          • Explain Analyze
          • Explain Prepared
        • Describe
    • Operators
      • OPERATORS
        • OPERATORS Precedence
        • Arithmetic Operators
          • %,MOD
          • *
          • +
          • -
          • -
          • /
          • DIV
        • Assignment Operators
          • =
        • Bit Functions and Operators
          • &
          • >>
          • <<
          • ^
          • |
          • ~
        • Cast Functions and Operators
          • BINARY
          • CAST
          • CONVERT
          • DECODE
          • ENCODE
          • SERIAL
          • SERIAL_FULL
        • Comparison Functions and Operators
          • >
          • >=
          • <
          • <>,!=
          • <=
          • =
          • BETWEEN ... AND ...
          • IN
          • IS
          • IS NOT
          • IS NOT NULL
          • IS NULL
          • ILIKE
          • ISNULL
          • LIKE
          • NOT BETWEEN ... AND ...
          • NOT IN
          • NOT LIKE
          • COALESCE
          • Function_Interval
          • Function_Greatest
          • Function_Least
          • Function_Strcmp
          • Null Safe Equal
        • Flow Control Functions
          • CASE WHEN
          • IF
          • IFNULL
          • NULLIF
        • Logical Operators
          • AND,&&
          • NOT,!
          • OR
          • XOR
    • Functions and Operators
      • Aggregate Functions
        • AVG
        • BITMAP
        • BIT_AND
        • BIT_OR
        • BIT_XOR
        • COUNT
        • GROUP_CONCAT
        • HLL_ADD_AGG
        • HLL_CARDINALITY
        • HLL_MERGE_AGG
        • MAX
        • MEDIAN
        • MIN
        • STDDEV_POP
        • SUM
        • VARIANCE
        • VAR_POP
      • Datetime
        • CURDATE()
        • CURRENT_TIMESTAMP()
        • DATE()
        • DATE_ADD()
        • DATE_FORMAT()
        • DATE_SUB()
        • DATEDIFF()
        • DAY()
        • DAYOFYEAR()
        • EXTRACT()
        • HOUR()
        • FROM_UNIXTIME
        • MINUTE()
        • MONTH()
        • NOW()
        • SECOND()
        • STR_TO_DATE()
        • SYSDATE()
        • TIME()
        • TIMEDIFF()
        • TIMESTAMP()
        • TIMESTAMPDIFF()
        • TO_DATE()
        • TO_DAYS()
        • TO_SECONDS()
        • UNIX_TIMESTAMP
        • UTC_TIMESTAMP()
        • WEEK()
        • WEEKDAY()
        • YEAR()
        • Addtime
        • Curtime
        • Dayname
        • Get Format
        • Maketime
        • Monthname
        • Quarter
        • Subtime
        • Time Format
        • Timestampadd
        • Yearweek
      • Geo Functions
        • H3 Index Functions
        • MBRContains
        • MBRCoveredBy
        • MBRCovers
        • MBRDisjoint
        • MBREquals
        • MBRIntersects
        • MBROverlaps
        • MBRTouches
        • MBRWithin
        • S2 Cell Functions
        • ST_Area()
        • ST_AsGeoJSON
        • ST_AsText()
        • ST_AsWKB()
        • ST_Boundary()
        • ST_Buffer()
        • ST_Centroid()
        • ST_Collect()
        • ST_Contains()
        • ST_ConvexHull()
        • ST_CoveredBy()
        • ST_Covers()
        • ST_Crosses()
        • ST_Difference()
        • ST_Dimension()
        • ST_Disjoint()
        • ST_Distance()
        • ST_Distance_Sphere()
        • ST_EndPoint()
        • ST_Envelope()
        • ST_Equals()
        • ST_ExteriorRing()
        • ST_FrechetDistance()
        • ST_GeoHash
        • ST_GeomCollFromText()
        • ST_GeomCollFromWKB()
        • ST_GeometryN()
        • ST_GeometryType()
        • ST_GeomFromGeoJSON
        • ST_GeomFromText()
        • ST_GeomFromWKB()
        • ST_HausdorffDistance()
        • ST_InteriorRingN()
        • ST_Intersection()
        • ST_Intersects()
        • ST_IsClosed()
        • ST_IsCollection()
        • ST_IsEmpty()
        • ST_IsRing()
        • ST_IsSimple()
        • ST_IsValid()
        • ST_LatFromGeoHash
        • ST_Latitude()
        • ST_Length()
        • ST_LineFromText()
        • ST_LineFromWKB()
        • ST_LineInterpolatePoint()
        • ST_LineInterpolatePoints()
        • ST_LongFromGeoHash
        • ST_Longitude()
        • ST_MakeEnvelope()
        • ST_MLineFromText()
        • ST_MLineFromWKB()
        • ST_MPointFromText()
        • ST_MPointFromWKB()
        • ST_MPolyFromText()
        • ST_MPolyFromWKB()
        • ST_NumGeometries()
        • ST_NumInteriorRings()
        • ST_NumPoints()
        • ST_Overlaps()
        • ST_PointAtDistance()
        • ST_PointFromGeoHash
        • ST_PointFromText()
        • ST_PointFromWKB()
        • ST_PointN()
        • ST_PointOnSurface()
        • ST_PolyFromText()
        • ST_PolyFromWKB()
        • ST_Simplify()
        • ST_SRID()
        • ST_StartPoint()
        • ST_SwapXY()
        • ST_SymDifference()
        • ST_Touches()
        • ST_Union()
        • ST_Validate()
        • ST_Within()
        • ST_X()
        • ST_Y()
      • Mathematical
        • ACOS()
        • ATAN()
        • BIT_COUNT()
        • CEIL()
        • CEILING()
        • COS()
        • COT()
        • CRC32()
        • EXP()
        • FLOOR()
        • LN()
        • LOG()
        • LOG2()
        • LOG10()
        • PI()
        • POWER()
        • ROUND()
        • RAND()
        • SIN()
        • SINH()
        • TAN()
        • Atan2
        • Degrees
        • Radians
        • Sign
        • Truncate
      • String
        • BIT_LENGTH()
        • CHAR_LENGTH()
        • CONCAT()
        • CONCAT_WS()
        • EMPTY()
        • ENDSWITH()
        • FIELD()
        • FIND_IN_SET()
        • FORMAT()
        • FROM_BASE64()
        • HEX()
        • INSTR()
        • LCASE()
        • LEFT()
        • LENGTH()
        • LOCATE()
        • LOWER()
        • LPAD()
        • LTRIM()
        • MD5()
        • NAME_CONST()
        • OCT()
        • REPEAT()
        • REVERSE()
        • RPAD()
        • RTRIM()
        • SHA1()/SHA()
        • SHA2()
        • SPACE()
        • SPLIT_PART()
        • STARTSWITH()
        • STRCMP()
        • SUBSTRING()
        • SUBSTRING_INDEX()
        • TO_BASE64()
        • TRIM()
        • UCASE()
        • UNHEX()
        • UPPER()
        • Regular Expressions
          • NOT REGEXP
          • REGEXP_INSTR()
          • REGEXP_LIKE()
          • REGEXP_REPLACE()
          • REGEXP_SUBSTR()
        • Aes_Decrypt
        • Aes_Encrypt
        • Elt
        • Quote
        • Right
      • Vector
        • Mathematical Calculations
        • CLUSTER_CENTERS()
        • COSINE_SIMILARITY()
        • COSINE_DISTANCE()
        • INNER_PRODUCT()
        • L1_NORM()
        • L2_NORM()
        • L2_DISTANCE()
        • NORMALIZE_L2()
        • SUBVECTOR()
        • VECTOR_DIMS()
      • Table
        • UNNEST()
      • Window Functions
        • RANK()
        • ROW_NUMBER()
        • Cume_Dist
        • Percent_Rank
      • JSON Functions
        • JSON_EXTRACT()
        • JSON_EXTRACT_FLOAT64()
        • JSON_EXTRACT_STRING()
        • JSON_QUOTE()
        • JSON_ROW()
        • JSON_SET()
        • JSON_UNQUOTE()
        • TRY_JQ()
        • Json Arrow
        • JSON_ARRAY()
          • JSON_KEYS()
          • JSON_LENGTH()
          • JSON_OBJECT()
          • JSON_PRETTY()
          • JSON_SCHEMA_VALID()
          • JSON_SCHEMA_VALIDATION_REPORT()
          • JSON_TYPE()
          • JSON_VALID()
          • JSON_VALUE()
        • JSON_KEYS()
        • JSON_LENGTH()
        • JSON_OBJECT()
        • JSON_PRETTY()
        • JSON_SCHEMA_VALID()
        • JSON_SCHEMA_VALIDATION_REPORT()
        • JSON_TYPE()
        • JSON_VALID()
        • JSON_VALUE()
      • Other Functions
        • SAVE_FILE()
        • SAMPLE()
        • SERIAL_EXTRACT()
        • SLEEP()
        • STAGE_LIST()
        • UUID()
      • System OPS Functions
        • CURRENT_ROLE()
        • CURRENT_USER_NAME()
        • CURRENT_USER()
        • PURGE_LOG()
        • GET_LOCK()
        • RELEASE_LOCK()
        • IS_FREE_LOCK()
        • IS_USED_LOCK()
        • RELEASE_ALL_LOCKS()
        • Version
    • System Paramaters
      • Standalone Common Parameters Configuration
      • Distributed Common Parameters Configuration
    • MatrixOne Catalog
    • Privilege Control Types
    • Limitations
      • Partitioning supported features list
    • MatrixOne Directory Structure
    • MatrixOne Tools
      • mo_ctl distributed Tools
      • mo_datax_writer tool
      • mo_ssb_open tool
      • mo_tpch_open tool
      • mo_ts_perf_test tool
      • Mo_Service
    • Mysql Compatibility Matrix
    • Mysql Unsupported Features
  • Troubleshooting
    • Common statistic data query
    • Database statistics
    • Error Code
  • FAQs
    • Deployment FAQs
    • SQL FAQs
  • Release Notes
    • MatrixOne v26.4.1.4 Release Notes
    • MatrixOne v26.4.1.3 Release Notes
    • MatrixOne v26.4.1.2 Release Notes
    • MatrixOne v26.4.1.1 Release Notes
    • MatrixOne v26.4.1.0 Release Notes
    • MatrixOne v26.4.0.0-rc4 Release Notes
    • MatrixOne v26.4.0.0-rc3 Release Notes
    • MatrixOne v26.4.0.0-rc2 Release Notes
    • MatrixOne v26.4.0.0-rc1 Release Notes
    • MatrixOne v26.3.0.10 Release Notes
    • MatrixOne v26.3.0.11 Release Notes
    • MatrixOne v26.3.0.12 Release Notes
    • MatrixOne v26.3.0.13 Release Notes
    • MatrixOne v26.3.0.14 Release Notes
    • MatrixOne v26.3.0.15 Release Notes
    • MatrixOne v26.3.0.5 Release Notes
    • MatrixOne v26.3.0.6 Release Notes
    • MatrixOne v26.3.0.7 Release Notes
    • MatrixOne v26.3.0.8 Release Notes
    • MatrixOne v26.3.0.9 Release Notes
    • MatrixOne v25.2.0.2 Release Notes
    • MatrixOne v25.2.0.3 Release Notes
    • MatrixOne v25.2.1.0 Release Note
    • MatrixOne v25.2.1.1 Release Notes
    • MatrixOne v25.2.2.0 Release Notes
    • MatrixOne v25.2.2.1 Release Notes
    • MatrixOne v25.2.2.2 Release Notes
    • MatrixOne v25.3.0.0 Release Note
    • MatrixOne v25.3.0.1 Release Notes
    • MatrixOne v25.3.0.2 Release Notes
    • MatrixOne v25.3.0.3 Release Notes
    • MatrixOne v25.3.0.4 Release Notes
    • Key Improvements
    • MatrixOne v24.1.1.1 Release Notes
    • MatrixOne v24.1.1.2 Release Notes
    • MatrixOne v24.1.1.3 Release Notes
    • MatrixOne v24.1.2.0 Release Notes
    • MatrixOne v24.1.2.1 Release Notes
    • MatrixOne v24.1.2.2 Release Notes
    • MatrixOne v24.1.2.3 Release Notes
    • MatrixOne v24.1.2.4 Release Notes
    • MatrixOne v24.2.0.0 Release Notes
    • MatrixOne v24.2.0.1 Release Notes
    • MatrixOne v23.0.7.0 Release Notes
    • MatrixOne v0.8.0 Release Notes
    • MatrixOne v23.1.0.0 Release Notes
    • MatrixOne v23.1.0.0-RC1 Release Notes
    • MatrixOne v23.1.0.0-RC2 Release Notes
    • MatrixOne v23.1.0.1 Release Notes
    • MatrixOne v23.1.0.2 Release Notes
    • MatrixOne v23.1.1.0 Release Notes
    • MatrixOne v22.0.2.0 Release Notes
    • MatrixOne v22.0.3.0 Release Notes
    • Docker
    • Features
    • Known issues
    • Contributors
    • MatrixOne v22.0.4.0 Release Notes
    • Docker
    • Features
    • Known issues
    • Contributors
    • MatrixOne v22.0.5.0 Release Notes
    • MatrixOne v22.0.5.1 Release Notes
    • MatrixOne v220.6.0 Release Notes
    • MatrixOne v21.0.1.0 Release Notes
  • Glossary
  • Contribute
    • How to Contribute
      • Preparation
      • Report an Issue
      • Contribute Code
      • Review a Pull Request
      • Contribute Documentation
      • Make a Design
    • Code Style
      • Code Comment Style
      • Commit & Pull Request Style
Back to top

Write PostgreSQL data to MatrixOne using Flink¶

This chapter describes how to write PostgreSQL data to MatrixOne using Flink.

Pre-preparation¶

This practice requires the installation and deployment of the following software environments:

  • Complete standalone MatrixOne deployment.

  • Download and install lntelliJ IDEA (2022.2.1 or later version).

  • Select the JDK 8+ version version to download and install depending on your system environment.

  • Install PostgreSQL.

  • Download and install Flink with a minimum supported version of 1.11.

  • Download and install MySQL, the recommended version is 8.0.33.

Operational steps¶

Download Flink CDC connector¶

wget https://repo1.maven.org/maven2/com/ververica/flink-sql-connector-postgres-cdc/2.1.1/flink-sql-connector-postgres-cdc-2.1.1.jar 

Copy the jar package¶

Copy the Flink CDC connector and the corresponding Jar packages for flink-connector-jdbc_2.12-1.13.6.jar and mysql-connector-j-8.0.33.jar to flink-1.13.6/lib/ If flink is already started, restart flink and load the valid jar package.

Postgresql Turn on cdc configuration¶

  1. postgresql.conf Configuration

    #change the maximum number of wal send processes (default is 10), which is the same value as the solts setting above 
    max_wal_senders = 10 # max number of walsender processes #break replication connections that have been inactive for more than the specified number of milliseconds, you can set it appropriately a little larger (default 60s) 
    wal_sender_timeout = 180s # in milliseconds; 0 disables #change the maximum number of solts (default is 10), flink-cdc defaults to one table 
    max_replication_slots = 10 # max number of replication slots #specify as logical 
    wal_level = logical # minimal, replica, or logical
    
  2. pg_hba.conf

    #IPv4 local connections: 
    host all all 0.0.0.0/0 password 
    host replication all 0.0.0.0/0 password 
    

Create table in postgresql and insert data¶

create table student
(
    stu_id integer not null unique,
    stu_name varchar(50),
    stu_age integer,
    stu_bth date
);

INSERT  into student VALUES (1,"lisa",12,'2022-10-12');
INSERT  into student VALUES (2,"tom",23,'2021-11-10');
INSERT  into student VALUES (3,"jenny",11,'2024-02-19');
INSERT  into student VALUES (4,"henry",12,'2022-04-22');

Building tables in MatrixOne¶

create table student
(
    stu_id integer not null unique,
    stu_name varchar(50),
    stu_age integer,
    stu_bth date
);

Start cluster¶

Switch to the flink directory and execute the following command:

./bin/start-cluster.sh 

Start Flink SQL CLI¶

./bin/sql-client.sh 

Turn on checkpoint¶

Set up checkpoint every 3 seconds

SET execution.checkpointing.interval = 3s; 

Create source table with flink ddl¶

CREATE TABLE pgsql_bog  (
      stu_id  int not null,
      stu_name    varchar(50),
      stu_age     int,
      stu_bth     date,
     primary key (stu_id) not enforced
) WITH (
      'connector' = 'postgres-cdc',
      'hostname' = 'xx.xx.xx.xx',
      'port' = '5432',
      'username' = 'postgres',
      'password' = '123456',
      'database-name' = 'postgres',
      'schema-name' = 'public',
      'table-name' = 'student',
      'decoding.plugin.name' = 'pgoutput' ,
      'debezium.snapshot.mode' = 'initial'
      ) ;

If it’s table sql, pgoutput is the standard logical decode output plugin in PostgreSQL 10+. It needs to be set up. Without adding: 'decoding.plugin.name' = 'pgoutput', an error is reported: org.postgresql.util.PSQLException: ERROR: could not access file "decoderbufs": No such file or directory.

Create sink table¶

CREATE TABLE test_pg (
      stu_id  int not null,
      stu_name    varchar(50),
      stu_age     int,
      stu_bth     date,
      primary key (stu_id) not enforced
) WITH (
'connector' = 'jdbc',
'url' = 'jdbc:mysql://xx.xx.xx.xx:6001/postgre',
'driver' = 'com.mysql.cj.jdbc.Driver',
'username' = 'root',
'password' = '111',
'table-name' = 'student'
);

Importing PostgreSQL data into MatrixOne¶

insert into test_pg select * from pgsql_bog; 

Query the corresponding table data in MatrixOne;

mysql> select * from student;
+--------+----------+---------+------------+
| stu_id | stu_name | stu_age | stu_bth    |
+--------+----------+---------+------------+
|      1 | lisa     |      12 | 2022-10-12 |
|      2 | tom      |      23 | 2021-11-10 |
|      3 | jenny    |      11 | 2024-02-19 |
|      4 | henry    |      12 | 2022-04-22 |
+--------+----------+---------+------------+
4 rows in set (0.00 sec)

Data can be found to have been imported

Adding data to postgrsql¶

insert into public.student values (51, '58', 39, '2020-01-03'); 

Query the corresponding table data in MatrixOne;

mysql>  select * from student;
+--------+----------+---------+------------+
| stu_id | stu_name | stu_age | stu_bth    |
+--------+----------+---------+------------+
|      1 | lisa     |      12 | 2022-10-12 |
|      2 | tom      |      23 | 2021-11-10 |
|      3 | jenny    |      11 | 2024-02-19 |
|      4 | henry    |      12 | 2022-04-22 |
|     51 | 58       |      39 | 2020-01-03 |
+--------+----------+---------+------------+
5 rows in set (0.01 sec)

You can find that the data has been synchronized to the MatrixOne correspondence table.

To delete data:

delete from public.student where stu_id=1; 

If something goes wrong,

cannot delete from table "student" because it does not have a replica identity and publishes deletes 

then execute

alter table public.student replica identity full; 

Query the corresponding table data in MatrixOne;

mysql> select * from student;
+--------+----------+---------+------------+
| stu_id | stu_name | stu_age | stu_bth    |
+--------+----------+---------+------------+
|      2 | tom      |      23 | 2021-11-10 |
|      3 | jenny    |      11 | 2024-02-19 |
|      4 | henry    |      12 | 2022-04-22 |
|     51 | 58       |      39 | 2020-01-03 |
+--------+----------+---------+------------+
4 rows in set (0.00 sec)
Next
Write MongoDB data to MatrixOne using Flink
Previous
Write SQL Server data to MatrixOne using Flink
Copyright © 2026, MatrixOrigin
Made with Sphinx and @pradyunsg's Furo
On this page
  • Write PostgreSQL data to MatrixOne using Flink
    • Pre-preparation
    • Operational steps
      • Download Flink CDC connector
      • Copy the jar package
      • Postgresql Turn on cdc configuration
      • Create table in postgresql and insert data
      • Building tables in MatrixOne
      • Start cluster
      • Start Flink SQL CLI
      • Turn on checkpoint
      • Create source table with flink ddl
      • Create sink table
      • Importing PostgreSQL data into MatrixOne
      • Adding data to postgrsql