Mariadb varie:backup, restore, shrink databse

di il
2 risposte

Mariadb varie:backup, restore, shrink databse

Dato il mio ultimo post a riguardo della corruzione di alcuni file database e del blocco del servizio mariadb sto facendo alcune prove di backup e restore ecc.

Sto provando il comando mariabackup, l idea di usare questo piuttosto che mysqldump è che se il servizio non parte non riesco neppure a ripristinare un file .sql fatto con mysqldump.

Da quello che ho capito mariabackup fa invece una copia della cartella data.
Ho eseguite le 3 istruzioni che ho troato cercando in rete:

backup:
mariabackup --backup --target-dir="C:\backup" --user yourUserId --password yourUserPassword
restore:
mariabackup --prepare --target-dir="C:\backup"

mariabackup --copy-back --target-dir="C:\backup" --datadir="C:\Program Files\MariaDB 10.3\data" --user yourUserId --password yourUserPassword
per quanto riguarda il backup mi crea i file;
per quanto riguarda il comando prepare fa qualcosa, non mi da errori,
ma quando esegui il comando copyback, al di la che mi da errore che la cartella data non è vuota, ok la svuoto 8salvandomi il file my.ini), eseguo il comando e comuque non va a buon fine, mi ritorna errore:
mariabackup based on MariaDB server 10.7.3-MariaDB Win64 (AMD64)
mariabackup: Can't create file 'D:\MariaDB\data\.\ibdata1' (errno: 22 "Invalid argument")
[01] 2022-09-13 14:35:27 error: cannot open the destination stream for ibdata1
[01] 2022-09-13 14:35:27 Error: copy_file() failed.
provando su un altro pc invece non mi da errore ma quando avvio il servizio mariadb si inchioda restituendo errore 1067, percui di fatto io non sono riuscito a recuperare nulla, cosa sbaglio?


Gia che ci sono volevo poi chiedere un altra cosa:
ho una tabella che occupa 1 giga con 3 milioni di record, se cancello 2 milioni di record, vedo che la tabella continua comunque ad occupare 1 giga.

Il data file nella cartella data occupa sempre la stessa dimensione.
ma se creo un dump con mysqldump, droppo la tabella recupero la tabella con mysql la tabella (giustamente) occupa circa un terzo della dimensione.

Non ce un modo per shrinkarla in automatico?, ho provato col comando flush table ma non mi pare faccia nulla.

grazie nuovamente.

2 Risposte

  • Re: Mariadb varie:backup, restore, shrink databse

    Scusate se rinnovo, nessuno sa aiutarmi?
    grazie ancora.
  • Re: Mariadb varie:backup, restore, shrink databse

    ziobacco ha scritto:


    mariabackup based on MariaDB server 10.7.3-MariaDB Win64 (AMD64)
    mariabackup: Can't create file'D:\MariaDB\data\.\ibdata1' (errno: 22 "Invalid argument")
    [01] 2022-09-13 14:35:27 error: cannot open the destination stream for ibdata1
    [01] 2022-09-13 14:35:27 Error: copy_file() failed.
    Le cause di errore possono essere molteplici come i messaggi di errore possono essere criptici : nel tuo caso pare evidente che c'è un problema con il percorso del file ibdata1. Forse dovresti cominciare a vedere il file my.ini se espressamente fa riferimento alla locazione della cartella [DataDir] e se questo riferimento è corretto (sintatticamente) e se esiste ...
    'D:\MariaDB\data\.\ibdata1' ti sembra corretto ?

    Ovviamente dovresti (devi) partire dalla lettura della documentazione ufficiale di MariaDb (ed eventualmente in caso di risposte non soddisfacenti / inesistenti) passare a quella di MySQL (almeno per la parte di installazione e i primi passi dovrebbero essere abbastanza simili - direi che la versione 10.7 possa essere paragonata alla versione 8 di MySQL)
Devi accedere o registrarti per scrivere nel forum
2 risposte