Noticed an problem in my script.
The last line should be changed from... sudo -u postgres <db name> < <path of dump file on production server>dump.sql To... sudo -u postgres psql <db name> < <path of dump file on production server>dump.sql On Tuesday, January 23, 2018 at 4:18:15 PM UTC-6, [email protected] wrote: > > I'm very new to Mezzanine. Been working with it for about a week and a > half now. And let me say, once you get your head around the structure and > methodology, it's just an awesome framework! > So nice to break away from the standard CMS offerings and gain full > control. > > I've setup a local dev environment and a remote Linode production server. > it took a minute but I got deployment through Fabric worked out and it's > now working well, and repeatable. > I'm using postgres as my database platform and the one thing that was > giving me a bit if a fit is syncing the local and remote databases. I've > tried the django and fab bacup and restore > utilities but they are prone to a number of permissions issues. These > could be resolved but it would require a change in my established project > structure, or relatively extensive changes to > the dev and production environments or postgres servers. I wanted > something that required fewer changes to the default environments. I > finally came up with a method that is working well, at least for now. > It could no doubt be automated via a set of Fabric tasks. But i thought > I'd share my "manual" method for those having the same issue. It may be a > little unorthodox but it's working well, and is repeatable. > > Here it s... > > *Keeping in mind that this will delete any db based content or user data > on the remote db.* But for initial development it's great! And I believe > it could be easily modified to backup and restore only those tables > required for the site structure and content. > I suppose you could also do this in reverse to sync the dev db to the > production db for backup and to make sure you're developing and testing > against real world data. > > *On development server:* > sudo -u postgres pg_dump <db name> > dump.sql > > sed -i -e 's/<development db role>/<production db role>/g' dump.sql *(NOTE: > This is only required if the local and remote db roles are not the same.)* > > scp ./dump.sql <remote user created during 'fab secure'>@<server IP>:<path > to where the dump file should be placed on production server>/dump.sql > > *On production server: NOT*E > dropdb -h localhost -U <db role> <db name> > sudo -u postgres createdb -O <role> <db name> > sudo -u postgres <db name> < <path of dump file on production > server>dump.sql > > I'm certain there are many other methods to get this don but this is what > I came up with. > I've developed this under the conditions specific to my dev and production > environments so any comments, suggestions or questions are more than > welcome. > > Cheers! :) > -- You received this message because you are subscribed to the Google Groups "Mezzanine Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
