Kullanıcıların Mysql'de Tutulması

Kurulum

Jabberd'yi Mysql ile birlikte kullanmak istiyorsanız, öncelikle Jabberd 2 dağıtımı içindeki kurulum betiğini çalıştırmanız gerekmektedir. Öncelikle '[Jabberd Source Files]/tools' dizinine geçin ve MySQL konsolunu başlatın (MySQL sunucusu zaten çalışıyor olmalıdır). MySQL konsolundan aşağıdaki komutu çalıştırın:

mysql -u root -p
      mysql>\. db-setup.mysql
Böylece Jabberd için bir veritabanı ve MySQL sunucusuna erişebilecek bir kullanıcı yarattık.

Daha sonra MySQL konsolundan aşağıdaki SQL ifadesini çalıştırın (secret yazan yeri kendi parolanız ile değiştirin):

GRANT select,insert,delete,update ON jabberd2.* 
          to jabberd2@localhost IDENTIFIED by 'secret';
Böylece MySQL, Jabberd ile kullanılmaya hazır hale geldi.

Yapılandırma

Jabberd dosyalarının içerdiği bilgiler arasında parolalar da olduğu için gerekli izinleri aşağıdaki gibi ayarlayalım:

chown -R root:jabber /usr/local/etc/jabberd/*
chmod -R 640 /usr/local/etc/jabberd/*

Böylece artık yalnızca jabber kullanıcısı ve root'un yapılandırma dosyalarını okuyabilmesini ve değiştirebilmesini sağladık.

İpucu

Kolaylık için yapılandırma dosyalarına bir sembolik link atayabilirsiniz:

ln -s /usr/local/etc/jabberd/ /etc/jabberd

Şimdi yapılandırma dosyanızda veritabanı için ufak bir kaç ayar yapmanız gerekiyor. Öncelikle sm.xml dosyasında "Storage database configuration" ile başlayan satırda driver etiketleri arasında mysql yazdığından emin olun:

<!-- Storage database configuration -->
       <storage>
         <!-- By default, we use the MySQL driver for all storage -->
         <driver>mysql</driver>

Daha sonra sm.xml dosyasında "MySQL driver configuration" olarak etiketlenmiş sekmede "secret" yerine parolanızı yazın:

          <!-- MySQL driver configuration -->
          <mysql>
            <!-- Database server host and port -->
            <host>localhost</host>
            <port>3306</port>

            <!-- Database name -->
            <dbname>jabberd2</dbname>

            <!-- Database username and password -->
            <user>jabberd2</user>
            <pass>secret</pass>

            <!-- Transaction support. If this is commented out, transactions
                 will be disabled. This might make database accesses faster,
                 but data may be lost if jabberd crashes.

                 This will need to be disabled if you are using a MySQL
                 earlier than v3.23.xx, as transaction support did not appear
                 until this version. -->
            <transactions/>
          </mysql>
Böylece MySQL ile olan işimiz bitti.

Artık sunucumuzu test edebiliriz. Root iken aşağıdaki komutları uygulayın ve Jabber'ın keyfini çıkarın!

su
    su jabber
    cd /usr/local/bin
    ./jabberd