Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

[ Create a new account ]

marcello_dl (667940)

marcello_dl
  (email not shown publicly)
http://electrob.org/

Journal of marcello_dl (667940)

quick and dirty postgresql update- tutorial

[ #202034 ]
Friday May 02, @08:40AM
Debian
Note, this procedure involves some downtime for the server.
First dump existing databases, e.g.

# su - postgres -c 'pg_dump -C my_database > /tmp/my_database.sql'

If you have user putting content into database this step could be done later, just before importing the sql in the new cluster. Remember to take down db clients if you care for db consistency.

Then install new version, e.g.

# aptitude install postgresql-8.3

when one installs a new version of postgres under debian, the old version stays installed and a new cluster is automatically created. The new version server is configured for an alternative port (5433). Watch for the messages/logs from the package manager.

Then import old users into the new cluster, take into account the listening port run the updated client as the bash command "psql" defaults to the old version.

# su - postgres
# createuser a_user --port 5433

Then copy or update the pg_hba.conf settings to the one in the new cluster in /etc/postgresql/8.3/main/pg_hba.conf

Do not forget to reload the settings.
# /etc/init.d/postgresql-8.3 reload

Then import the databases
# su - postgres
$ /usr/lib/postgresql/8.3/bin/psql --port 5433

Then configure the new server for the existing server port, e.g.
# /etc/init.d/postgresql-8.3 stop
edit /etc/postgresql/8.3/main/postgresql.conf:
    port=5432

Then stop the db clients (eg. it's downtime for my dynamic sites hosted with lighttpd), take down old db, take up new one, restart db clients /etc/init.d/lighttpd stop /etc/init.d/postgresql-8.2 stop /etc/init.d/postgresql-8.3 start
    netstat -nat /etc/init.d/lighttpd start

test the db clients (restart your browser for webapps to avoid using stale session data), if all is well we must remove old postgresql else at reboot it is restarted, conflicting with the newest server version.

Since the debian remove scripts assume the server is up we must take the old server back up- we need to configure the old server for an alternative port so both versions can be up at the same time, e.g.

edit /etc/postgresql/8.3/main/postgresql.conf:
    port=5434

# /etc/init.d/postgresql-8.2 start
# aptitude purge postgresql-8.2

This is all.
Note. It is better to upgrade incrementally than doing it say, from 8.1 to 8.3
There might be ways to reduce downtime, with WAL for example.

Tip: play flv with mplayer

[ #198436 ]
Friday March 14, @09:24AM
User Journal
mplayer -demuxer lavf ...

Rails: typo (todo)

[ #194216 ]
Friday January 25, @09:15AM
User Journal
apt-get install sqlite3 libsqlite3-dev
gem install sqlite3-ruby
of course all ruby dev and rails stuff must be already installed

gem install typo /to be continued
    517 mkdir blog
    518 cd blog/
    519 typo config .
    520 typo config . database=postgresql
    521 ls
    522 ls -a
    523 typo install --help
    524 rm ./* -rf
    525 typo install .
    526 typo stop .
    527 cat installer/lighttpd.conf.example
    528 typo config . database=postgresql
    529 typo config . web-server=external
    530 nano config/database.yml
    531 echo edit pg_hba.conf
    532 echo createdb typo -E UTF8
    533 rake db:migrate
    534 nano config/database.yml
    535 cp ../GaraTiro/config/database.yml config/database.yml
    536 nano config/database.yml
    537 rake db:migrate
    538 echo edit lighttpd.conf
    539 echo "$HTTP["host"] =~ "typo.jasonhoffman.org" {
server.document-root = "/home/jah/apps/typo/trunk/public/"
server.error-handler-404 = "/dispatch.fcgi"
server.indexfiles = ( "dispatch.fcgi")
server.errorlog = "/home/jah/logs/error.typo.log"
    fastcgi.server = ( ".fcgi" =>
          ( "localhost" =>
              ( "socket" => "/home/jah/tmp/typo-jah.socket",
                                                        "min-procs" => 2,
                                                        "max-procs" => 2,
                  "bin-path" => "/home/jah/apps/typo/trunk/public/dispatch.fcgi",
                  "bin-environment" => ( "RAILS_ENV" => "production" )
    )))
}
"
    540 ls
    541 ls log/
    542 touch log/lighttpd.error.log
    543 typo config . port=80
    544 typo config . rails-environment=development
    545 typo config .
    546 chown marcello:www-data .
    547 #change lighttpd user as same as app

Compiz fusion (gnome) for intel X3100

[ #193938 ]
Tuesday January 22, @08:42PM
Debian
As root:

edit /etc/X11/xorg.conf

If no extensions section add one, see below. Add the option anyway.

Section "Extensions"
                Option "Composite" "Enable"
EndSection

and in Section Devices add

        Option "XAANoOffscreenPixmaps" "true"

add to /etc/apt/sources.list
#compiz
deb http://download.tuxfamily.org/osrdebian unstable compiz-fusion-git

download the pgp key
wget http://download.tuxfamily.org/osrdebian/61B8DB62.gpg -O- | apt-key add -

install:

apt-get remove --purge compiz*
aptitude dist-upgrade
apt-get install -t unstable compiz-core compiz-gnome compizconfig-settings-manager compiz-fusion-plugins*

maybe it is needed the following too:
aptitude install 915resolution

As the logged in user, with the graphical desktop already running:
SKIP_CHECKS=yes compiz --replace

Packet writing

[ #193622 ]
Friday January 18, @10:18PM
Debian
Verify you have the modules (recent 2.6 kernel needed stock lenny works)
modprobe -v udf
modprobe -v pktcdvd

aptitude install udftools
put your cdrom device in /etc/default/udftools
e.g. dev/hdX /etc/init.d/udftools restart

cdrwtool -d /dev/hda -q for a cdrw
dvd+rw-format /dev/hdd
and mkudffs /dev/hdd for dvd+rw

mount -t udf -o noauto,noatime,sync,rw,users /dev/pktcdvd/0 /mnt/

Now root is able to write on device, adjust permissions.