50MB Große Datenbank via Shell inpotieren

Backup, Restore und Transfer von Daten
chaos45
Posts: 11
Joined: 2006-06-16 20:18
Location: Potsdam
 

50MB Große Datenbank via Shell inpotieren

Post by chaos45 »

Hallo,

ich habe seit einigen Tagen nun einen Vserver bei Strato, da es standartgemäße Begrenzungen bei phpMyAdmin geben die nur einen uplaod von 2MB ermöglichen, würde nur die möglichkeit bestehen meine Datenbank zu splitten. Aber ich habe auch gelesen das ein Einspielen der DB via Shell möglich ist.
Doch nun meine Frage, wie ist es möglich die DB via Shell zu inportieren? Ich bitte um eine detailierte Anweisung(wenn möglich gleich mit SSH Befehelen)!

Code: Select all

# mysql -udjrick -ptest123 testdb < /var/www/sicherung.sql
Das ist das einzige was mir an den Kopfgeschmissen wurde.
Ich weis aber nicht ob die SQL Datei vom Server abgerufen wird oder vom Rechner. Und wenn sie vom Server abgerufen wird, wo sie hinmuss.

Danke schonmal im Vorraus
aubergine
Posts: 471
Joined: 2005-09-10 17:52
Location: Frankfurt am Main
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by aubergine »

Code: Select all

mysql --host=localhost --user=user --password=pw Datenbankname < /pfad/zum/*.sql
chaos45
Posts: 11
Joined: 2006-06-16 20:18
Location: Potsdam
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by chaos45 »

Nun gehts ja los, verwirrt mich immer mehr, wäre nett gewesen wenn du das mal ein wenig detailierst und auch mal auf meine Fragen eingehst;)

So wie ich das erkennen kann wird die SQL Datei vom Server gelesen, ist ja auch eigentlich logisch. Aber ich habe das Gefühl wenn ich mich per FTP einlogge und mir das root-verzeichnis angucke und mich mit nem anderen Account einloge haben die beiden rootverzeichnise nichts miteinander zu tun. Normalerweise müsste doch jeder account das gleiche root verzeichniss haben oder? Deshalb wunderts mich wie shell das erkennen will von wo er die Datei lesen will! Naja belehrt mich eines besseren, vielleicht irre ich mich ja.
aubergine
Posts: 471
Joined: 2005-09-10 17:52
Location: Frankfurt am Main
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by aubergine »

Code: Select all

 < /pfad/zum/*.sql 
Dadurch wird definiert von wo aus mysql das sql File einlesen soll.
Die Pfadangabe ist völlig beliebig und hat mit keinem "root" Verzeichnis etwas zu tun.

Du musst die Datei auch nicht auf den Server hochladen, insofern deine Datenbank nicht nur an localhost gebunden ist, was ich dir aber aus Sicherheitsgründen nur herzlich empfehlen kann
chaos45
Posts: 11
Joined: 2006-06-16 20:18
Location: Potsdam
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by chaos45 »

ja ja das habe ich ja verstanden:) aber wie würde das aussehen wenn ich die Datei jetzt zum Beispiel von meinem Desktop lesen will?

oder sagen wir mal von einem Fremdserver (http://meinedmain.de/backup/*.sql)

Code: Select all

< /http://meinedmain.de/backup/*.sql
so nicht oder???
aubergine
Posts: 471
Joined: 2005-09-10 17:52
Location: Frankfurt am Main
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by aubergine »

Code: Select all

cd /tmp
wget http://meinedmain.de/backup/*.sql
mysql --host=localhost --user=user --password=pw Datenbankname < /tmp/*.sql
chaos45
Posts: 11
Joined: 2006-06-16 20:18
Location: Potsdam
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by chaos45 »

danke klappt alles bestens:)
duergner
Posts: 923
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by duergner »

Aber du hast nicht verstanden was du da gerade gemacht hast, oder?
chaos45
Posts: 11
Joined: 2006-06-16 20:18
Location: Potsdam
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by chaos45 »

Na ich denke schon^^

ich habe die SQL Datei wia Shell von eienm Fremdserver gelesen und in die Datenbank meines Server eingefügt!
stevieboy
Posts: 3
Joined: 2006-06-30 02:19
Location: Berlin
 

Re: 50MB Große Datenbank via Shell inpotieren

Post by stevieboy »

Naja...das klingt aber nicht ganz überzeugend.

Dir muss bewusst sein, dass Du Deinen ganzen Datenbankinhalt unverschlüsselt und für jeden zugänglich, der die Adresse kennt, über das Internet geladen hast.

Weiterhin scheint es mir, ohne dass ich Dich bevormunden will, dass es nötig ist, Dir einen "Grundkurs Linux" anzuraten.

Wenn Du keinen Ärger mit Deinem Server haben willst, solltest Du wissen:

- wie die Verzeichnisstruktur auf Deinem Server organisiert ist
- was Benutzer und Gruppen, was ihre Aufgaben und deren Nutzen sind
- welche Zugriffstechniken es zum Server gibt (SSH,WEBDAV,HTTP,FTP,TELNET -> wobei die letzten 2 tunlichst zu vermeiden sind, gerade bei administrativen Aufgaben).

- jeder, der hier in diesen Thread hineinschaut wird Dir noch mindestens einen weiteren Punkt nennen können...

Also, es gibt viel zu tun...Pack es an :)

Viele Grüße,

stevieboy