Avatar billede codebase Praktikant
06. maj 2007 - 15:38 Der er 8 kommentarer og
2 løsninger

Simpel backup af enkelt tabel i en db

Hejsa

jeg har ikke større erfaring med oracle, men tænker jeg med en enkelt kommando kan lave en backup og restore af en enkelt tabel i databasen.


mangler lige lidt start hjælp ;)

jeg har adgang til SQL Plus Worksheet.
Avatar billede Slettet bruger
06. maj 2007 - 23:30 #1
hej codebase.

Du kan jo altid lave en "select * from tabel". Men ulempen er, at formatet ikke er særlig nemt at læse ind igen. For det første laver SQL Plus en fast formatering, så man ikke ved, hvad der er mellemrum, og hvad der er fyld. For det andet får dato og tid et format der afhænger af din aktuelle opsætning. For det tredje vil der være problemer med felter af typen blob. For det fjerde er det muligt at du skal lave en længere linielængde.

Hvis du har SQL Plus Worksheet, har du måske også exp og imp på kommandolinien? Prøv at lave en "exp help=y" i en prompt, og se, hvad du får. Hvis du har lavet en export, kan du få data ind igen med en imp-kommando.

mvh
Jørn
Avatar billede codebase Praktikant
07. maj 2007 - 07:43 #2
ja men du har jo ganske ret, den kommando har jeg skam også :)

Hvad gør jeg så herfra, håber du vil bære mig igennem.

Findes der iøvrigt ikke et værktøj ala phpmyadmin, så jeg visuelt kan se strukturen?

jeg er ikke sikker på hvad min 'database' hedder, hvad hedder superuseren?
Avatar billede teepee Nybegynder
07. maj 2007 - 10:31 #3
Du skal bruge export/import kommandoen.
Avatar billede teepee Nybegynder
07. maj 2007 - 10:32 #4
EXP username/password@instance TABLES=(tablename)
Avatar billede Slettet bruger
07. maj 2007 - 10:56 #5
Hej codebase

Der findes desværre ikke noget a la PHP-Myadmin. De fleste bruger produktet TOAD fra Quest Solutions.

Superuser hedder SYSTEM og oprettes pr. default med kodeordet MANAGER. Hvis du ikke kan komme ind, men databasen ligger lokalt på din maskine, kan du sikkert fra en prompt skrive SQLPLUS "/ AS SYSDBA" (gåseøjne nødvendige). Så er du inde og kan skrive ALTER USER system IDENTIFIED BY nytpassword;
Slut af med EXIT.

For at lære export at kende: skriv EXP HELP=Y for at få hjælp.

Visuelt overblik: prøv at downloade DbVisualizer fra Minq.se. Men du skal selv downloade jdbc-drivere fra Oracle.

mvh
Jørn
Avatar billede Slettet bruger
07. maj 2007 - 11:52 #6
For at finde ud af, hvad din instans hedder, kan du kigge i Services. Der findes en service, der heder OracleServiceDBNAVN.
Avatar billede codebase Praktikant
07. maj 2007 - 14:54 #7
oki venner, kigger lige på jeres forslag. Kast lige et svar alle mand.
Avatar billede Slettet bruger
07. maj 2007 - 15:36 #8
oki codebase
Avatar billede codebase Praktikant
07. maj 2007 - 17:53 #9
jeg kan ikke connecte via SQLPLUS "/ AS SYSDBA"

Men har fået export til en fil med data, desværre kan man ikke direkte læse indholdet af filen. Havde håbet det havde været i clear text format, mit dump.

Jeg ser også at jeg kan kaste en QUERY med i min exp kommando. Betyder det at jeg kunne dumpe dele af en tabel og senere lave en import hvor kun disse data tilføjes tabellen igen? eller sletter jeg alt andet data når jeg forsøger at lave en import.

jeg har flere 'ens' databaser på flere server, og ville faktisk 'bare' kopier de danske sprogrettelser fra den ene tabel over på en anden server med samme tabel.
Avatar billede Slettet bruger
08. maj 2007 - 09:00 #10
Tak for pointene.

Hvis du kigger efter filen tnsnames.ora på dine servere, kan du i denne fil fortælle den enkelte server om de andre. Du kan 'navngive' forbindelserne. Derefter kan du i SQL definere et databaselink CREATE DATABASE LINK MITDBLINK... Og så kan du direkte hente data fra den anden database INSERT INTO MINTABEL ... SELECT * FROM MINTABEL@MITDBLINK WHERE sprogrettelse = 1.

Du må lige kigge i SQL Reference efter syntaks for database link. Alternativt kan man faktisk gøre det via en klient pc med SQL*Plus. Kig i manualen for SQL*Plus efter kommandoen 'COPY'.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester