PostgreSQL in Bitrix
SkillDatabases & dataCovers PostgreSQL support in Bitrix — PgsqlConnection, migration from MySQL, compatible code, module support matrix. Applied when configuring or migrating to PostgreSQL Enterprise editions. Key terms — PostgreSQL, PgsqlConnection, migration, compatible-code.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the PostgreSQL in Bitrix skill
What this skill tells your AI
The instructions your AI receives, as published by bxmaximum/bitrix-framework-skills in skills/bitrix-postgresql/SKILL.md and read by ahel’s review.
Baseline: main 23.0+. Supported in Enterprise for PostgreSQL licenses (B24 and CMS). Connection class: \Bitrix\Main\DB\PgsqlConnection.
Configuration
'connections' => [
'value' => [
'default' => [
'className' => \Bitrix\Main\DB\PgsqlConnection::class,
'host' => 'localhost',
'database' => 'bx',
'login' => 'bx',
'password' => '***',
'options' => \Bitrix\Main\DB\Connection::DEFERRED,
],
],
'readonly' => true,
],
Before Migration
- Check that the current license stays valid through the whole test period (up to 6 months) and the final switch — renew it first if it expires earlier.
- Obtain Enterprise for PostgreSQL license. It provides a coupon (activate it only after migration testing) and a test key for a separate test install; testing window is max 6 months from purchase. During testing the production site keeps running on MySQL under the current license — the test key is for the test environment only.
- Update Performance Monitor module to 24.0.0+.
- Project must use UTF-8 encoding.
- Close site to visitors during migration.
- Test on staging first — return to MySQL after production PostgreSQL launch requires manual work.
Module Compatibility
Not all kernel and marketplace modules support PostgreSQL. Incompatible modules are disabled during conversion wizard.
Check custom code:
- MySQL-specific SQL (
LIMITsyntax differences handled by SqlHelper, but raw SQL may break). - MySQL install scripts under
install/mysql/orinstall/db/mysql/need matching PostgreSQL scripts underinstall/pgsql/orinstall/db/pgsql/.
Find modules missing pgsql install:
for mysql in bitrix/modules/*/install/mysql/install.sql bitrix/modules/*/install/db/mysql/install.sql; do
pgsql=$(echo $mysql | sed 's#/mysql/#/pgsql/#')
test -e $pgsql || echo "missing: $pgsql"
done
Check kernel module install folders: each supporting module should have matching install/pgsql/ or install/db/pgsql/ scripts. Inspect bitrix/modules/<module>/install/ in the project.
Migration Methods
- Wizard — Admin conversion tool (lists disabled modules on step 1).
- CLI — manual server-side migration via Performance Monitor module tools.
Writing Compatible Code
- Use ORM and
SqlHelper— avoid MySQL-specific functions in raw SQL. - Use
SqlExpressionplaceholders instead of string concatenation. - Test DDL in both MySQL (
install/mysql/orinstall/db/mysql/) and PostgreSQL (install/pgsql/orinstall/db/pgsql/) if the module supports both. - Avoid
ENGINE=InnoDB, backticks-specific syntax,UNSIGNED.
Checklist
- License is Enterprise for PostgreSQL.
- All custom modules checked for pgsql install scripts.
- Raw SQL audited for MySQL-specific syntax.
- Migration tested on copy before production.
- Marketplace modules verified with vendors.
Signals
- GitHub stars
- 31
- Forks
- 5
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
bitrix-postgresql- Source
- github.com/bxmaximum/bitrix-framework-skills