diff --git a/contrib/ast-db-manage/config/versions/ef7efc2d3964_ps_contacts_add_endpoint_and_modify_.py b/contrib/ast-db-manage/config/versions/ef7efc2d3964_ps_contacts_add_endpoint_and_modify_.py
index 0ac63c83a280582057deb4bb86e5c116ca109305..4818185a0956a42efe40756a45c4366514f89017 100644
--- a/contrib/ast-db-manage/config/versions/ef7efc2d3964_ps_contacts_add_endpoint_and_modify_.py
+++ b/contrib/ast-db-manage/config/versions/ef7efc2d3964_ps_contacts_add_endpoint_and_modify_.py
@@ -27,7 +27,8 @@ def upgrade():
     op.create_index('ps_contacts_qualifyfreq_exp', 'ps_contacts', ['qualify_frequency', 'expiration_time'])
     op.create_index('ps_aors_qualifyfreq_contact', 'ps_aors', ['qualify_frequency', 'contact'])
 def downgrade():
-    if op.get_context().bind.dialect.name != 'mssql':
+    context_name = op.get_context().bind.dialect.name
+    if context_name != 'mssql' and context_name != 'mysql':
         op.drop_index('ps_aors_qualifyfreq_contact')
         op.drop_index('ps_contacts_qualifyfreq_exp')
     else:
diff --git a/contrib/ast-db-manage/config/versions/f3c0b8695b66_taskprocessor_overload_trigger.py b/contrib/ast-db-manage/config/versions/f3c0b8695b66_taskprocessor_overload_trigger.py
index 6a5b9b230b324007e6ad96320a5194ead55b92c6..fccda35b5721e007ffd46136461023c2c98319f6 100644
--- a/contrib/ast-db-manage/config/versions/f3c0b8695b66_taskprocessor_overload_trigger.py
+++ b/contrib/ast-db-manage/config/versions/f3c0b8695b66_taskprocessor_overload_trigger.py
@@ -28,11 +28,12 @@ def upgrade():
     op.add_column('ps_globals',
         sa.Column('taskprocessor_overload_trigger',
             sa.Enum(*PJSIP_TASKPROCESSOR_OVERLOAD_TRIGGER_VALUES,
-            name=PJSIP_TASKPROCESSOR_OVERLOAD_TRIGGER_NAME,
-            create_type=False)))
+            name=PJSIP_TASKPROCESSOR_OVERLOAD_TRIGGER_NAME)))
 
 def downgrade():
-    if op.get_context().bind.dialect.name == 'mssql':
+    context = op.get_context()
+
+    if context.bind.dialect.name == 'mssql':
         op.drop_constraint('ck_ps_globals_taskprocessor_overload_trigger_pjsip_taskprocessor_overload_trigger_values', 'ps_globals')
     op.drop_column('ps_globals', 'taskprocessor_overload_trigger')
 
diff --git a/contrib/ast-db-manage/config/versions/fe6592859b85_fix_mwi_subscribe_replaces_.py b/contrib/ast-db-manage/config/versions/fe6592859b85_fix_mwi_subscribe_replaces_.py
index 4ecaaf789f9252d514c7e7c4a01b5051eb66e020..c0f528a54183196d000e989e5831c98e80a71911 100644
--- a/contrib/ast-db-manage/config/versions/fe6592859b85_fix_mwi_subscribe_replaces_.py
+++ b/contrib/ast-db-manage/config/versions/fe6592859b85_fix_mwi_subscribe_replaces_.py
@@ -34,7 +34,7 @@ def upgrade():
     op.alter_column('ps_endpoints', 'mwi_subscribe_replaces_unsolicited',
                     type_=sa.String(5))
     op.alter_column('ps_endpoints', 'mwi_subscribe_replaces_unsolicited',
-                    type_=ast_bool_values)
+            type_=ast_bool_values, postgresql_using='mwi_subscribe_replaces_unsolicited::{0}'.format(AST_BOOL_NAME))
 
 
 def downgrade():
@@ -55,7 +55,7 @@ def downgrade():
     op.alter_column('ps_endpoints', 'mwi_subscribe_replaces_unsolicited',
                     type_=sa.String(5))
     op.alter_column('ps_endpoints', 'mwi_subscribe_replaces_unsolicited',
-                    type_=sa.Integer)
+            type_=sa.Integer, postgresql_using='mwi_subscribe_replaces_unsolicited::Integer')
 
     if op.get_context().bind.dialect.name == 'postgresql':
         ENUM(name=AST_BOOL_NAME).drop(op.get_bind(), checkfirst=False)