PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [MySQL] Cluster und große DB



Isengard
09.07.09, 13:41
Hallo,

ich habe hier einen MySQL Cluster, bestehend aus 2 Nodes mit jeweils 32 GB Arbeitsspeicher.

Nun habe ich folgendes Problem:

Habe eine alte DB mit 1,4GB Größe und einer Tabelle mit ca. 5,4 Millionen Einträgen.

Diese möchte ich in den Cluster importieren. Hier mein Weg



tables=`mysql testdb -B -e "show tables"`
for table in $tables
do
mysqldump --single-transaction --quick testdb $table > $table.sql
sed 's/InnoDB/ndbcluster/g' $table.sql
mysql -u sqladmin -p1234 -h 10.0.0.100 testdb < $table.sql
done


Nach ca. 10 Minuten Import schmiert mir der NDBD Dienst ab und der Import stoppt logischerweise.
Die Binärlog Dateien sind dann ca. 2 GB Groß und somit lässt sich auch MySQL komischerweise nicht mehr richtig starten.
Nach Löschen der BLogs gehts dann wieder (ist ein Testcluster), allerdings sind die DBs dann logischerweise defekt.

Hier meine ndb_mgmd Einstellungen



[NDBD DEFAULT]
NoOfReplicas=2
MaxNoOfLocalOperations=50000
MaxNoOfConcurrentOperations=50000
MaxNoOfTables=128
MaxNoOfAttributes=8192
DataMemory=6100M
IndexMemory=512M
UndoIndexBuffer=20M
DataDir=/var/lib/mysql
TimeBetweenLocalCheckpoints=6
MaxNoOfOrderedIndexes=512
MaxNoOfUniqueHashIndexes=256
NoOfFragmentLogFiles=32

[MYSQLD DEFAULT]

[NDB_MGMD DEFAULT]

[TCP DEFAULT]

[NDB_MGMD]
HostName=10.0.0.111

[NDBD]
id=2
HostName=10.0.0.120

[NDBD]
id=3
HostName=10.0.0.121

[MYSQLD]
[MYSQLD]

$kuLL
10.07.09, 21:14
sed 's/InnoDB/ndbcluster/g' $table.sql
Dieser Schritt führt aber kein Replacement der Engine durch, es sei denn du hast sed als Alias von sed -i gesetzt. Oder ist das nur nicht vollständig wiedergegeben?