Search Postgresql Archives

Sync some database tables, but not others ... WAS Re: How to modify ENUM datatypes?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tino Wildenhain wrote:
D. Dante Lorenso wrote:
Alvaro Herrera wrote:
D. Dante Lorenso wrote:
Or, here's another way to look at it ... make it easier to modify ENUM datatypes because we all know that you will eventually need that feature whether you males, females, and unknowns think so or not.
Agreed.  Let's keep in mind that the current ENUM implementation is
completely new.

Here's a use case that I doubt too many are aware of ... what's unique about ENUM is that the data for the ENUM becomes part of the schema of a database.

This is actually something I like very much. I have systems where the DEV and PROD databases are separate and must be synchronized when pushing out new features. I currently use non-free tools to synchronize just the schemas for both databases.

Often if a new row is added to a lookup table, that row doesn't make it to the QA or PROD databases because it's part of the data of a table and is not part of the schema. For data (like ENUM data) that should be consistent across databases, it helps if it gets deployed with the schema so that lookups will succeed properly.

Well since its configuration and not payload its nothing wrong with just
having the data in your repository as well and load it every time when
you roll out a new release.

I have a convenient 3rd party tool that will "sync this database schema with that database schema". I just run the tool, accept the discovered changes and voila, I've deployed the database changes to the next environment.

I haven't written any custom scripts to import content into specific tables. As I see it, that would be a little complex also since you'd have to find the difference between dev and prod and only push the changes across (additions or deletes). For potentially hundreds of small ENUM-like lookup tables, this seems quite tedious ... like the kind of thing a DB sync tool should handle for you ;-)

Perhaps there is a 3rd party tool that would not only sync the DB schema, but could add a list of tables which must also have their data synced? Something that could remember that these 50 tables are "constant/deployable" and must be mirrored as-is to the other database while these other tables store environment-specific data and should not be synced. Anyone know of such a tool?

-- Dante



Cheers
Tino




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux