diff --git a/.travis.yml b/.travis.yml
index dd52b5255048268a91a4d0d8a66f3ecf35292f08..e128d53981499f13821fada985979656f5d66f8f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,10 +5,6 @@ go:
   - 1.2
   - 1.2.1
 
-addons:
-  hosts:
-    - testserver.local
-
 env:
   - GOARCH=amd64
 
@@ -27,12 +23,12 @@ services:
 
 before_script:
   - cat mysql/_dumps/setup.sql | mysql -uroot
-  - cat mysql/_dumps/structs.sql | mysql -uupperio -pupperio upperio_tests -htestserver.local
+  - cat mysql/_dumps/structs.sql | mysql -uupperio -pupperio upperio_tests
   - cat postgresql/_dumps/setup.sql | psql -U postgres
-  - cat postgresql/_dumps/structs.sql | PGPASSWORD="upperio" psql -U upperio upperio_tests -htestserver.local
+  - cat postgresql/_dumps/structs.sql | PGPASSWORD="upperio" psql -U upperio upperio_tests
   - mongo upperio_tests --eval 'db.addUser("upperio", "upperio")'
   # - cat ql/_dumps/structs.sql | $GOPATH/bin/ql -db ql/_dumps/test.db
 
 script:
   - go version
-  - go test
+  - go test -host 127.0.0.1
diff --git a/db_test.go b/db_test.go
index e0b246459b6b155636996fefa5f9c823c2eaba3e..0ffdf03bc5972fadc2c5866489b0244b8f8580f0 100644
--- a/db_test.go
+++ b/db_test.go
@@ -3,7 +3,9 @@ package db_test
 import (
 	"database/sql"
 	"errors"
+	"flag"
 	"labix.org/v2/mgo"
+	"log"
 	"reflect"
 	"testing"
 	"time"
@@ -27,31 +29,44 @@ var (
 	errDriverErr = errors.New(`Driver error`)
 )
 
-var settings = map[string]*db.Settings{
-	`sqlite`: &db.Settings{
-		Database: `upperio_tests.db`,
-	},
-	`mongo`: &db.Settings{
-		Database: `upperio_tests`,
-		Host:     `testserver.local`,
-		User:     `upperio`,
-		Password: `upperio`,
-	},
-	`mysql`: &db.Settings{
-		Database: `upperio_tests`,
-		Host:     `testserver.local`,
-		User:     `upperio`,
-		Password: `upperio`,
-	},
-	`postgresql`: &db.Settings{
-		Database: `upperio_tests`,
-		Host:     `testserver.local`,
-		User:     `upperio`,
-		Password: `upperio`,
-	},
-	`ql`: &db.Settings{
-		Database: `file://upperio_test.ql`,
-	},
+var settings map[string]*db.Settings
+
+func init() {
+
+	// Getting host from the environment.
+	host := flag.String("host", "testserver.local", "Testing server address.")
+
+	flag.Parse()
+
+	log.Printf("Running tests against host %s.\n", *host)
+
+	settings = map[string]*db.Settings{
+		`sqlite`: &db.Settings{
+			Database: `upperio_tests.db`,
+		},
+		`mongo`: &db.Settings{
+			Database: `upperio_tests`,
+			Host:     *host,
+			User:     `upperio`,
+			Password: `upperio`,
+		},
+		`mysql`: &db.Settings{
+			Database: `upperio_tests`,
+			Host:     *host,
+			User:     `upperio`,
+			Password: `upperio`,
+		},
+		`postgresql`: &db.Settings{
+			Database: `upperio_tests`,
+			Host:     *host,
+			User:     `upperio`,
+			Password: `upperio`,
+		},
+		`ql`: &db.Settings{
+			Database: `file://upperio_test.ql`,
+		},
+	}
+
 }
 
 var setupFn = map[string]func(driver interface{}) error{