lbigroupp / database-checker
获取实际模式和JSON配置之间的差异
v2.0.2
2023-01-18 11:26 UTC
Requires
- php: ^8.2
- ext-json: *
- psr/log: ^3.0.0
- symfony/options-resolver: ^6.2
Requires (Dev)
- rector/rector: ^0.15.7
This package is auto-updated.
Last update: 2024-09-18 14:59:07 UTC
README
我遇到了一个客户数据库同步的问题。我没有工具来检查客户端实例是否确实有效。
待办事项
-
管理
FOREIGN KEY
(取决于存储引擎)。 -
创建
MysqlDatabase
类以管理mysql的版本升级,例如,在5.6之前的版本中,fulltext索引在innodb上没有处理。 -
允许忽略某些表。
-
允许忽略某些列。
-
允许忽略某些索引。
-
允许修改列。(添加、修改、删除、重命名)
-
在创建
MysqlDatabase
后验证json/对象的导出。 -
处理mysql 5.5的默认版本:current_timestamp => default now() update default now()
完成
-
从JSON文件生成对象。
-
从数据库生成对象。
-
将
ENUM('0','1')
转换为TYINT(1)
。 -
生成两个对象之间的diff。
-
敏感处理大小写。
-
集成
collate
检查。 -
创建
FULLTEXT
索引。 -
检查存储引擎
-
处理
DROP COLUMNS
。 -
一旦完成对
DROP
和REMOVE COLUMNS
的处理,允许软件仅通过配置进行创建。 -
在
ALTER COLUMN
之前删除索引。 -
检查某些表的data(例如:可能的称呼列表)。
-
添加结构优化(例如:在具有许多条记录的表中使用
TEXT
、BLOB
)。 -
索引建议。
-
从SQL查询中验证索引是否已定义。
// watcher
gulp start
// lance les tests unitaires (nécessite phpunit)
gulp phpunit
// prépare le projet pour la production
gulp build
// permet de générer la couverture du code (nécessite xdebug/phpuni)
gulp coverage