MySQL default Konfiguration

[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
default-character-set=utf8

[mysqld]
skip-external-locking
default-character-set=utf8
default-collation=utf8_general_ci
character-set-server=utf8
collation-server=utf8_general_ci
init-connect='SET NAMES utf8'

key_buffer = 1000M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8

sort_buffer_size = 32M
myisam_sort_buffer_size = 32M

table_cache = 512
tmp_table_size = 64MB

myisam-recover = BACKUP
#max_connections = 100
#table_cache = 64
#thread_concurrency = 10
#
# * Query Cache Configuration
#
query_cache_limit = 4M
query_cache_size = 256M
log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 2

Subersion Dump teilen

Um den dump eines Svn-Repos nach Verzeichnissen aufzuteilen hilft svndumpfilter

cat dump.svn | svndumpfilter include verzeichnis/ > dump-gefiltert.svn

oder mit Ausschluss von Verzeichnissen:


cat dump.svn | svndumpfilter --include: verzeichnis1/ --exclude: verzeichnis1/weg > dump-gefiltert.svn

Debian 6 Lenny ruby bundler Fehler

Wenn man bundler mittels gem in Debian 6 installiert kommt immer ein require Fehler.

gem install bundler 
bundle:4:in `require': no such file to load -- bundler (LoadError)

Um dies zu beheben muss ein Symlink gesetzt werden.

ln -s /var/lib/gems/1.8/bin/bundle /usr/local/bin/bundle

Natsort in mySQL

“Natsort” scheint irgendwie nicht so ganz unterstützt zu werden. Hier ein Vorschlag von irgendwo her:


CONCAT(IF(ASCII(LEFT(`sortcol`,1))>57,LEFT(`sortcol`,1),'0'),IF(ASCII(RIGHT(`sortcol`,1))>57,LPAD(`sortcol`,10,'0'),LPAD(CONCAT(`sortcol`,'-'), 10,'0'))) AS sortname

ruby bundler in Ubuntu 11.04 verwenden

Nach der Installation von “sudo gem install bundler” läuft irgendwie noch nix.

Erst wenn man das Paket verlinkt, dann läuft alles:

“sudo ln -s /var/lib/gems/1.8/bin/bundle /usr/local/bin/bundle”

Subversion Umzug auf anderen Server

Eigentlich einfach: dump, neues Repository, Daten wieder laden, Änderungen der Zwischenzeit nachziehen


svnadmin dump /path/to/repository > repo_svn.dump

svnadmin create /path/to/repository

svnadmin load /path/to/repository < repo_svn.dump

oder halt Versionen nachladen:


svnadmin dump --incremental -r <> /path/to/repository > diffsvn.dump

svnadmin load /path/to/repository < diffsvn.dump

Apache Redirect für Subdomain

Um eine Domain auf eine Subdomain umzuleiten mittels 301 muss folgendes in der .htaccess oder im vhost eingetragen werden:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain\.com
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=permanent,L]

SVN Dateien über Apache verbieten

Damit man SVN-Projekte direkt über Apache ausliefern kann ist es hilfreich die SVN Verzeichnisse direkt zu verbieten.

Als vHost Eintrag (403 Seite) im Block:


Order allow,deny
Deny from all

Als Rewrite rule in der .htaccess:
RewriteRule ^(.*/)?\\.svn/ - [F,L]

Als redirect zur 404 Seite:
RedirectMatch 404 /\\.svn(/|$)

MySQL Dump aller Datenbanken in getrennte Dateien

for I in $(mysql -e ‘show databases’ -s –skip-column-names); do mysqldump $I | gzip > “$I.sql.gz”; done

Gesehen bei http://www.commandlinefu.com/

Datenbank inklusive Benutzer und “grant all” erstellen


mysqladmin -u root -v create database

In mysql-Konsole:

grant all on database.* to ‘user’@localhost identified by ‘user_password’;