Yesterday I have upgraded postgress server packages on my server.
It has not started anymore so I have begun searching why.
The log told me that I use data created for old version of postgress.
So the migration journey begun.
The migtration tool pg_upgrade
wanted several directories as params but after upgade of pg server the “old_bindir” did not exist.
You have downloaded the old packages and extract them to get the “old_bindir”:
DEB_URL=search google for package for your distro and version
wget $DEB_URL -O postgre8.4.deb
OLD_PACK=/tmp/pg-old
mkdir $OLD_PACK
dpkg-deb -R postgre8.4.deb $OLD_PACK
Now you need create 8.4 environment (the configs in /etc/postgres).
Magic tool is used for that:
this creates /etc/postgresql/8.4/ where configs compatible with old ver resides.
You have to make some changes to old server config (/etc/postgresql/8.4/main/postgresql.conf):
change data_directory to folder where your backuped data dir is.
And change the port to another value that the new server occupy.
Now find out what locale was the old data created with and pass it to initdb.
In my case it was (run under postgres user!):
su postgres
/usr/lib/postgresql/9.3/bin/initdb –locale=en_US.UTF-8
Now you have new datadir and you can start migration:
su postgres
cd /var/lib/postgresql
/usr/lib/postgresql/9.3/bin/pg_upgrade \
-b $DEB_URL/usr/lib/postgresql/8.4/bin/ -B /usr/lib/postgresql/9.3/bin/ \
-d data.old/main/ -D 9.3/main/
Hopefully now you have successfuly migrated all the data.
I have discovered Netlify CMS, great CMS application for statically generated webs.
It’s build with react and redux (pitty, I prefer MobX, but :),
is modularized, already has build in support for github-pages based web
and most important is fact that it can be compiled and the resulting files can put next to your pages and be served as another page of your web.
After long period I have finished another version of eduit project.
It uses SQL database as user storage because I believe that LDAP is pain in ..
Server uses libnssmysql for user SAM, but samba has its own user backend, FUUU!
Last week I had a special task. I had to implement file uploading.
Well, you might say, what is so special about that?
So, I has to be able to upload huge files (GBs) in reliable and background manner.
I use angular.js for the client side so I searched for a solution that has no dependency (like JQuery).