Re: [vz-users] Automatisches Backupkonzept auf NAS

2014-11-24 Diskussionsfäden justin
Hi Andreas,

Am 24.11.2014 um 23:01 schrieb Andreas Götz :

> Mach mal php misc/tools/doctrine statt dem deep link aus vendor, dann geht 
> auch das.

in der Tat - das klappt :-)

php misc/tools/doctrine.php orm:schema-tool:create --dump-sql > vz.sqlite


>> Am 24.11.2014 um 22:21 schrieb jus...@justinotherguy.org:
>> 
>>> Am 24.11.2014 um 20:12 schrieb Andreas Goetz :
>>> 
>> 
>>> Als Workaround kannst Du das Schema von Hand anlegen indem Du in der 
>>> vz.conf.php auf sqlite änderst und dann das Schema mit doctrine schema-tool 
>>> anlegst.
>> 

das klappt nun also:

$ sqlite vz.db < vz.sqlite

Die vz.sqlite hab ich nun in dbcopy.json eingetragen und dann:


 - backup:
 php /opt/dbcopy/dbcopy.php backup  -c /opt/dbcopy/dbcopy.json
>>> 

$ php misc/tools/dbcopy.php backup -c /opt/dbcopy/dbcopy.json

  [Doctrine\DBAL\DBALException]
  An exception occurred while executing 'SELECT name FROM sqlite_master WHERE 
type = 'table' AND name != 'sqlite_sequence' AND name != 'geometry_columns' AND 
name != 'spatial_ref_sys' UNION A
  LL SELECT name FROM sqlite_temp_master WHERE type = 'table' ORDER BY name':
  SQLSTATE[HY000]: General error: 26 file is encrypted or is not a database

  [PDOException]
  SQLSTATE[HY000]: General error: 26 file is encrypted or is not a database

Hm. Dabei sieht die Datei ganz gut aus:
$ file vz.db
/var/lib/mysql/vz.db: SQLite 2.x database
$ ls -al vz.db
-rw-r--r-- 1  24576 Nov 25 06:56 vz.db

Worüber bin ich jetzt gestolpert?

Danke für’s Dranbleiben :-)


Gruß, J.



Re: [vz-users] Automatisches Backupkonzept auf NAS

2014-11-24 Diskussionsfäden Andreas Götz
Mach mal php misc/tools/doctrine statt dem deep link aus vendor, dann geht auch 
das.

Viele Grüße, Andreas




> Am 24.11.2014 um 22:21 schrieb jus...@justinotherguy.org:
> 
> Hi Andreas,
> 
>> Am 24.11.2014 um 20:12 schrieb Andreas Goetz :
>> 
>> 2014-11-24 0:12 GMT+01:00 :
>>> - git clone https://github.com/andig/dbcopy.git
>> 
>> Braucht es nicht- einfach `git pull` in Deiner VZ Installation, dann 
>> `composer install`- es ist als Abhängigkeit bereits drin.
> 
> aha, ok.
> 
> 
>>> - Ziel-DB erzeugen:
>>> php /opt/dbcopy/dbcopy.php create -c /opt/dbcopy/dbcopy.json
>>> Creating target schema
>>> renaming assets for target platform: sqlite
>>> table: data
>>> table: entities
>>> table: entities_in_aggregator
>>> table: properties
>>> (Anm.: scheint keine sqlite-DB zu erzeugen - im lokalen Verzeichnis liegt 
>>> jedenfalls nix)
>>> 
>> Ja. Scheint ein Fehler zu sein, muss ich mir anschauen. Aber selbst wenn ich 
>> den behebe klappt das bei Dir nicht:
>> - wir haben im Schema keys mit identischem Namen die bei sqlite zu 
>> Duplikaten führen
>> - ich habs im git schon gefixt, aber...
>> - doctrine weigert sich das key rename zu synchronisieren wenn man nicht 
>> auch sonst was am schema ändert :(
> 
> ahja, *hüstel*, klar! ;-)
> 
> 
>> Als Workaround kannst Du das Schema von Hand anlegen indem Du in der 
>> vz.conf.php auf sqlite änderst und dann das Schema mit doctrine schema-tool 
>> anlegst.
> 
> das hab ich probiert:
> - etc/volkszaehler.conf.php:
>$config['db']['driver'] = 'pdo_sqlite‘;
>$config['db']['path'] = 'volkszaehler.sqlite‘;
> 
> $ php vendor/doctrine/orm/bin/doctrine.php orm:schema-tool:create --dump-sql
> You are missing a "cli-config.php" or "config/cli-config.php" file in your
> project, which is required to get the Doctrine Console working. You can use 
> the
> following sample as a template:
> 
>  use Doctrine\ORM\Tools\Console\ConsoleRunner;
> 
> // replace with file to your own project bootstrap
> require_once 'bootstrap.php';
> 
> // replace with mechanism to retrieve EntityManager in your app
> $entityManager = GetEntityManager();
> 
> return ConsoleRunner::createHelperSet($entityManager);
> 
> hm - das war mir dann doch zu suspekt...
> 
> 
>>> - backup:
>>> php /opt/dbcopy/dbcopy.php backup  -c /opt/dbcopy/dbcopy.json
>> 
>> Dann sollte das auch funktionieren.
> 
> bis hier bin ich leider nicht gekommen...
> 
> 
>> Versuchst Du es nochmal und machst mir für das Anlegen ein Issue auf?
> 
> done: https://github.com/volkszaehler/volkszaehler.org/issues/188
> 
> 
> Gruß, J.
> 


Re: [vz-users] Automatisches Backupkonzept auf NAS

2014-11-24 Diskussionsfäden justin
Hi Andreas,

Am 24.11.2014 um 20:12 schrieb Andreas Goetz :

> 2014-11-24 0:12 GMT+01:00 :
>> - git clone https://github.com/andig/dbcopy.git
> 
> Braucht es nicht- einfach `git pull` in Deiner VZ Installation, dann 
> `composer install`- es ist als Abhängigkeit bereits drin.

aha, ok.


>> - Ziel-DB erzeugen:
>> php /opt/dbcopy/dbcopy.php create -c /opt/dbcopy/dbcopy.json
>> Creating target schema
>> renaming assets for target platform: sqlite
>> table: data
>> table: entities
>> table: entities_in_aggregator
>> table: properties
>> (Anm.: scheint keine sqlite-DB zu erzeugen - im lokalen Verzeichnis liegt 
>> jedenfalls nix)
>> 
> Ja. Scheint ein Fehler zu sein, muss ich mir anschauen. Aber selbst wenn ich 
> den behebe klappt das bei Dir nicht:
> - wir haben im Schema keys mit identischem Namen die bei sqlite zu Duplikaten 
> führen
> - ich habs im git schon gefixt, aber...
> - doctrine weigert sich das key rename zu synchronisieren wenn man nicht auch 
> sonst was am schema ändert :(

ahja, *hüstel*, klar! ;-)


> Als Workaround kannst Du das Schema von Hand anlegen indem Du in der 
> vz.conf.php auf sqlite änderst und dann das Schema mit doctrine schema-tool 
> anlegst.

das hab ich probiert:
- etc/volkszaehler.conf.php:
$config['db']['driver'] = 'pdo_sqlite‘;
$config['db']['path'] = 'volkszaehler.sqlite‘;

$ php vendor/doctrine/orm/bin/doctrine.php orm:schema-tool:create --dump-sql
You are missing a "cli-config.php" or "config/cli-config.php" file in your
project, which is required to get the Doctrine Console working. You can use the
following sample as a template:

> - backup:
>> php /opt/dbcopy/dbcopy.php backup  -c /opt/dbcopy/dbcopy.json
>  
> Dann sollte das auch funktionieren.

bis hier bin ich leider nicht gekommen...


> Versuchst Du es nochmal und machst mir für das Anlegen ein Issue auf?

done: https://github.com/volkszaehler/volkszaehler.org/issues/188


Gruß, J.



Re: [vz-users] Automatisches Backupkonzept auf NAS

2014-11-24 Diskussionsfäden Andreas Goetz
Hallo Justin,

2014-11-24 0:12 GMT+01:00 :

> Moin Andreas,
>
> Am 23.11.2014 um 11:54 schrieb Andreas Goetz :
>
> > Schau Euch doch mal https://github.com/andig/dbcopy an. Im aktuellen VZ
> git habe ich das Tool inklusive Parameterdatei verlinkt. Es kann
> inkrementelle Backups der VZ DB erstellen (geht allerdings davon aus aus
> dass alte Datensätze nicht gelöscht/ geändert werden). Bei Bedarf kann es
> auch von mysql z.b. nach sqlite kopieren und zurück.
>
> das klingt super!
>
> Wollte das gleich mal testen - leider bislang ohne Erfolg:
> - git clone https://github.com/andig/dbcopy.git
>

Braucht es nicht- einfach `git pull` in Deiner VZ Installation, dann
`composer install`- es ist als Abhängigkeit bereits drin.

- dbcopy.json angepasst:
>"source": {
>// source database connection
>"driver": "pdo_mysql",
>"host": "localhost",
>"user": „vz",
>"password": „",
>"dbname": "volkszaehler"
>},
>"target": {
>// target database connection
>"driver": "pdo_sqlite",
>"path": "sqlite.db3",   // path is only used if
> driver = pdo_sqlite
>"host": "localhost",
>"user": "travis",
>"password": ""
>// "dbname": „backup“
> […] Rest: default
> - Composer installiert ("curl -s http://getcomposer.org/installer | php“,
> "php composer.phar install")
> - sqlite-Treiber installiert: apt-get install sqlite libsqlite0 php5-sqlite
>

Soweit gut.


> - Ziel-DB erzeugen:
> php /opt/dbcopy/dbcopy.php create -c /opt/dbcopy/dbcopy.json
> Creating target schema
> renaming assets for target platform: sqlite
> table: data
> table: entities
> table: entities_in_aggregator
> table: properties
> (Anm.: scheint keine sqlite-DB zu erzeugen - im lokalen Verzeichnis liegt
> jedenfalls nix)
>

Ja. Scheint ein Fehler zu sein, muss ich mir anschauen. Aber selbst wenn
ich den behebe klappt das bei Dir nicht:
- wir haben im Schema keys mit identischem Namen die bei sqlite zu
Duplikaten führen
- ich habs im git schon gefixt, aber...
- doctrine weigert sich das key rename zu synchronisieren wenn man nicht
auch sonst was am schema ändert :(

Als Workaround kannst Du das Schema von Hand anlegen indem Du in der
vz.conf.php auf sqlite änderst und dann das Schema mit doctrine schema-tool
anlegst.


> - backup:
> php /opt/dbcopy/dbcopy.php backup  -c /opt/dbcopy/dbcopy.json
>

Dann sollte das auch funktionieren.

 [Exception]
>  Table entities doesn't exist.To create the schema run
>
> doctrine.php orm:schema-tool:create --dump-sql
> […]
> -> Backup beschwert sich prompt, dass es die Tabelle „entities“ nicht
> findet (vermtl. wird nur die erste angemeckert und dann gestoppt)
>
> Tipps? Was mach ich falsch?
>
> Gruß, J.
>
>
Versuchst Du es nochmal und machst mir für das Anlegen ein Issue auf?

Viele Grüße,
Andreas