Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Geleitwort des Fachgutachters
Einleitung
1 Einführung
2 Installation
3 Erste Schritte
4 Einführung in Ruby
5 Eine einfache Bookmarkverwaltung
6 Test-Driven Development
7 Rails-Projekte erstellen
8 Templatesystem mit ActionView
9 Steuerzentrale mit ActionController
10 Datenbankzugriff mit ActiveRecord
11 E-Mails verwalten mit ActionMailer
12 Nützliche Helfer mit ActiveSupport
13 Ajax on Rails
14 RESTful Rails und Webservices
15 Rails mit Plug-ins erweitern
16 Performancesteigerung
17 Sicherheit
18 Veröffentlichen einer Rails-Applikation auf einem Server
Ihre Meinung?

Spacer
 <<   zurück
Ruby on Rails 2 von Hussein Morsy, Tanja Otto
Das Entwickler-Handbuch
Buch: Ruby on Rails 2

Ruby on Rails 2
geb., mit DVD
699 S., 39,90 Euro
Rheinwerk Computing
ISBN 978-3-89842-779-1
Online bestellenPrint-Version jetzt bestellen
* versandkostenfrei in (D) und (A)
Pfeil 7 Rails-Projekte erstellen
  Pfeil 7.1 Generieren eines Rails-Projektes
  Pfeil 7.2 Verzeichnisstruktur einer Rails-Applikation
  Pfeil 7.3 Namenskonventionen
  Pfeil 7.4 Datenbank-Konfiguration
  Pfeil 7.5 Umgebungseinstellungen
  Pfeil 7.6 Generatoren
  Pfeil 7.7 Rails-Konsole
  Pfeil 7.8 Lokaler Server
  Pfeil 7.9 Logging
  Pfeil 7.10 Debugging
  Pfeil 7.11 Rake
  Pfeil 7.12 EdgeRails
  Pfeil 7.13 Ein Rails-Projekt in Subversion überführen


Rheinwerk Computing - Zum Seitenanfang

7.4 Datenbank-Konfiguration  topZur vorigen Überschrift

database.yml

Beim Generieren eines Rails-Projekts erstellt Rails die Datenbank-Konfigurationsdatei config/database.yml mit den Einstellungen für den Datenbankzugriff automatisch. Rails geht standardmäßig von einer SQLite3-Datenbank aus. Wenn Sie einen anderen Datenbankadapter verwenden möchten, können Sie diesen mit dem optionalen Parameter --database oder -d angeben.

  • MySQL:
    --database mysql
  • Oracle:
    --database oracle
  • PostgreSQL:
    --database postgresql

Die Option --database müssen Sie jedoch nicht beim Erzeugen des Projekts angeben, da Sie die Konfigurationsdatei database.yml jederzeit an einen anderen Datenbankadapter anpassen können.

Datenbankadapter in Rails 2.0
Rails 2.0 enthält standardmäßig nur Datenbankadapter für MySQL, SQLite3 und PostgreSQL. Die Adapter der kommerziellen Datenbanken wurden in RubyGems-Pakete ausgelagert. Nach der Installation des jeweiligen RubyGems-Paketes können die Datenbankadapter wie gewohnt genutzt werden.

Die Konfigurationsdatei database.yml liegt im YAML-Format (siehe Anhang) vor.

Nach der Generierung des Rails-Projekts ist die Datei wie folgt für SQLite3 konfiguriert:

Listing  config/database.yml

# SQLite version 3.x
# gem install sqlite3-ruby (not necessary on OS X Leopard)
development:
  adapter: sqlite3
  database: db/development.sqlite3
  timeout: 5000

# Warning: The database defined as 'test' will be erased and
# re-generated from your development database when you run
# 'rake'.
# Do not set this db to the same as development or production.
test:
  adapter: sqlite3
  database: db/test.sqlite3
  timeout: 5000

production:
  adapter: sqlite3
  database: db/production.sqlite3
  timeout: 5000

Die Einstellungen in der database.yml sind in drei Bereiche unterteilt:

  1. Development:
    Datenbankeinstellungen für die Entwicklungsumgebung
  2. Test:
    Datenbankeinstellungen für die Testumgebung
  3. Production:
    Datenbankeinstellungen für die Produktionsumgebung

Jede dieser Umgebungen enthält folgende Einstellungsmöglichkeiten:

  1. Adapter:
    Datenbanktyp, z. B. mysql , postgresql oder sqlite3
  2. Database:
    Name der Datenbank oder bei SQLite der Datenbankdatei
  3. Timeout:
    maximale Dauer für das Warten auf die Freigabe der Datenbank in Millisekunden

Wenn Sie eine MySQL-Datenbank verwenden, sind folgende Einstellungen möglich:

  1. Adapter:
    Datenbanktyp, z. B. mysql , postgresql oder sqlite3
  2. Encoding:
    Der zu verwendende Zeichensatz in der Datenbank
  3. Database:
    Name der Datenbank oder bei SQLite der Datenbankdatei
  4. Username:
    Benutzername für den Zugriff auf die Datenbank (nicht bei SQLite)
  5. Password:
    Passwort für den Zugriff auf die Datenbank (nicht bei SQLite)
  6. Socket:
    Socket-Datei für MySQL (wird automatisch ermittelt)

Hätten Sie bei der Generierung des Projekts nicht rails projektname, sondern rails -d mysql projektname verwendet, hätte Rails diese Einstellungen automatisch vorgenommen.

Socket oder Host?

Es gibt zwei Arten, wie Rails mit einer MySQL-Datenbank kommuniziert:

  1. Über eine Socket-Datei:
    Schnelle Verbindung zur Datenbank, setzt allerdings voraus, dass der Pfad zu der Datei der ist, den MySQL erwartet. Diese Verbindung wird automatisch beim Erzeugen der Applikation in der database.yml über den Eintrag socket: angelegt.
  2. Über das Netzwerk:
    Diese Verbindung ist ein klein wenig langsamer als die Verbindung über die Socket-Datei. Es wird in der database.yml ein zusätzlicher Eintrag host: 127.0.0.1 benötigt, und der socket -Eintrag kann entfallen. Auf Windows-basierten Systemen ist diese Konfiguration zu empfehlen. Zusätzlich kann man über den Eintrag port den Port angeben. Wenn Sie den Standardport 3306 für MySQL verwenden, können Sie diesen Eintrag aber weglassen.

Falls Sie SQLite3 verwenden, können Sie die Einstellungen belassen. Auch die Datenbankdatei development.sqlite3, in der die gesamte Datenbank gespeichert wird, hat Rails bereits im Verzeichnis db erstellt.

Bei anderen Datenbanken wie z. B. MySQL wird ein Datenbankserver benötigt, der installiert werden muss.

Keine Tabulatoren in YAML-Dateien verwenden
Achten Sie beim Bearbeiten der Konfigurationsdatei unbedingt darauf, dass Sie die Einrückung beibehalten und keine Tabulatoren, sondern nur Leerzeichen verwenden.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
 <<   zurück
  Zum Katalog
Zum Katalog: Ruby on Rails 2
Ruby on Rails 2
Jetzt bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Ruby on Rails 3.1






 Ruby on Rails 3.1


Zum Katalog: Responsive Webdesign






 Responsive Webdesign


Zum Katalog: Suchmaschinen-Optimierung






 Suchmaschinen-
 Optimierung


Zum Katalog: JavaScript






 JavaScript


Zum Katalog: Schrödinger lernt HTML5, CSS3 und JavaScript






 Schrödinger lernt
 HTML5, CSS3
 und JavaScript


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de