Προς το περιεχόμενο

Oracle resources


dominant

Προτεινόμενες αναρτήσεις

Δημοσ.

Egrapsa to script mesa sto SQL*plus kai to ektelesa

 

Omos kolise sto parakato munhma. Pigan a grapso ena onoma gia to schema alla tipota.

 

 

-------------

 

 

SQL*Plus: Release 9.2.0.1.0 - Production on Πεμ Ιολ 3 10:35:10 2003

 

Copyright © 1982, 2002, Oracle Corporation. All rights reserved.

 

 

Έγινε σύνδεση.

> DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>Δώστε τιμή για το schema_name:

  • Απαντ. 149
  • Δημ.
  • Τελ. απάντηση
Δημοσ.

Egrapsa to script mesa sto SQL*plus kai to ektelesa

 

Omos kolise sto parakato munhma. Pigan a grapso ena onoma gia to schema alla tipota.

 

 

-------------

 

 

SQL*Plus: Release 9.2.0.1.0 - Production on Πεμ Ιολ 3 10:35:10 2003

 

Copyright © 1982, 2002, Oracle Corporation. All rights reserved.

 

 

Έγινε σύνδεση.

> DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>DOC>Δώστε τιμή για το schema_name:

Δημοσ.

δεν το κανεις κοπυ paste στην sql plus.

 

το κανεις κοπυ paste σε εναν text editor.

to soneis san c:\mktable.sql

(prosoxh!!! sto notepad, giati pros8etei kataliksi .txt

aytos einai kalyteros editor : http://www.simtel.net/pub/dl/11983.shtml )

 

anoigeis thn sql plus,

 

kai dineis:

@c:\mktable.sql

 

kai psakse sto C:\ gia to arxeio "tbl_<SCHEMA_NAME>.lst"

kai to anoigeis me text editor.

 

An 8eleis na mh sou zhtaei parametro, antikatesthse stis grammes

 

define 1 = &&SCHEMA_NAME

spool c:\tbl_&&SCHEMA_NAME

 

opou &&SCHEMA_NAME vale to onoma xrhsth.

 

**

 

gia na mh sou deixnei ta DOC, svise ta comments, dhladh oles tis grammes poy vriskontai panw apo to

 

"set arraysize 1 "

 

*********

 

 

 

mallon prepei na exeis ayta ta links proxeira

 

 

 

http://www-rohan.sdsu.edu/doc/oracle/server803/A53718_01/toc.htm

 

http://www-rohan.sdsu.edu/doc/oracle/server803/A53717_01/toc.htm

 

http://www-rohan.sdsu.edu/doc/oracle/server803/A54647_01/toc.htm

Δημοσ.

Ekana opos mou eipes(xoris na antikatastiso tipota apo to script pou mou edoses) kai dimiourgi8ike ena arxeio tbl_OEM_sqlplus_input_finished.LST sto c:

 

Alla to kako einai oti einai kleidomeno kai de mporo na to anoikso oute me to wordpad, notepad

 

Ti les na fteei?

Δημοσ.

pi8anon exeis anoixto to sql plus, to opoio exei akoma anoikto to arxeio gia write.

 

dwse SPOOL OFF

'h kleise teleiws thn sql+

 

alla mallon den sou evgale swsta apotelesmata krinontas apo to onoma tou arxeiou.

Δημοσ.

Koitakse opos e4xo grapsei parapano exo thn 9 ver 2 (9.0.2.0.1) omos h vash exei ginei backup apo 7i. Exo diavasei oti uparxei asumvatothta kai oti to restore tis vashs auths se 9i einai adynaton. Toulaxiston na eperna mono to schema ths etsi oste na paro mia geush ths domhs ths. An kai efoson auto einai adynaton tote ti me sumvouleueis?

Δημοσ.

αυτα που έχεις διαβάσει "οτι δεν γίνονται", δεν μπορεις να εισαι σιγουρος μεχρι να δοκιμασεις κατι.

 

 

1. αυτος ο σερβερ ora7 λειτουργεί κάπου αυτή τη στιγμή ή όχι ? Δεν έχεις πρόσβαση να πας εκει που δουλεύει να δεις επιτοπου το σχημα? γιατι οχι?

Κανονικά επρεπε να σου δώσουν ενα EXPORT της βάσης και οχι ενα απλο κοπυ ολου του δίσκου.

Αντε πες τους οτι ειναι ασχετοι.

 

 

2. αυτα τα αρχεία που εχεις δεν ειναι backup της oracle οπως ειναι το export. to export παραγει ενα αρχειο .dmp το οποιο κανεις import οπου θέλεις με μια εντολή και τελείωσες.

Αυτα που εχεις ειναι ενα cold backup, μια απλη αντιγραφή των datafiles. Χρησιμεύουν οταν έχουμε πχ:

To λειτουργικο στο C, και την Oracle se allo disko, και παθει ζημια (ιος, κλπ) το λειτουργικο και κανουμε φορματ μονο το C.

υπαρχει μια διαδικασια να μεταφέρουμε τα δεδομένα σε μια νεα εγκατασταση OS.

 

Για να τα διαβάσεις πρέπει να κανεις μια εγκατασταση custom oracle, και οταν σε ρωτήσει "Create starter database?" να πεις Οχι, και μετα να κανεις διάφορα που ακολουθούν.

Παντως στις οδηγιες αναφέρεται οτι πρεπει να ειναι ιδια βερσιον η παλια και η νεα.

 

Ακολουθούν οι οδηγίες απο την oracle: εκει που λεει SID ειναι το ονομα της database οπως το εχει επιλεξει στην 1η εγκατασταση.

Το default ονομα ειναι ORCL (αλλα μπορει να είναι άλλο στην δικη σου).

 

απο εκει παιρνει το ονομα το initSID.ora γίνεται initORCL.ora

 

 

-------------------------------------------------------------------------

Subject:

How to Restore From a cold Backup on Another Server

PURPOSE

-------

 

How to restore from a cold backup on another server

or the same server.

 

 

REQUIRED SOFTWARE/FILES

-----------------------

 

You need the following files included in the backup:

 

-initSID.ora

 

-Your sqlnet.ora,tnsnames.ora and listner.ora files (optional)

database data files ,control files

 

 

Prepare the new server by installing exactly the same version of Oracle,

patch

set release included !!! (custom without database creation)

 

 

 

 

STEP BY STEP EXPLANATION

------------------------

 

1. Prepare the configuration files from the backup.

---------------------------------------------------

 

1.1. Copy the sqlnet.ora,tnsnames.ora and listner.ora file to

Oracle_Home\network\admin (or \net80, 8.0.x database or \net73, 7.3.x

 

database ) directory ( optional )

 

1.2. Make an initSID.ora file with ifile='new location of init.ora' in the

 

"oracle_home\database" directory or place the initSID.ora file here.

 

1.3. Adjust the locations in the "initSID.ora" file to reflect any new

location

of files:

 

Adjust the "control_files =( ... )" entry.

 

Use the one binary backup controlfile from your backup and

duplicate (copy) and rename it if you want to use two or more control

files.

Be sure to reflect your choice in the control_files parameter.

 

Adjust the "log_archive_dest" to the directory where you have put the

archived

redologs.

 

Adjust the "background_dump_dest" and the "user_dump_dest" to an existing

directory.

 

1.4. Save the file.

 

2. Create a new instance with Oradim.

-------------------------------------

 

c:\>oradim -NEW -SID your_sid -INTPWD internal_password -STARTMODE AUTO -PFILE path_to_init.ORA

 

G:\ora8\bin>oradim -NEW -SID myora -INTPWD oracle -STARTMODE AUTO -PFILE G:\ora8\database\initmyora.ora

 

Now start only the OracleServiceSID service:

 

( control panel, services )

 

 

3. Connect with svrmgrl to the new instance.

--------------------------------------------

 

c:\>set ORACLE_SID=your_sid

c:\>svrmgrl internal/internal_password

svrmgr>startup mount;

 

 

4. Check the locations of the datafiles.

----------------------------------------

 

4.1. Check the locations of the datafiles, if you restored them to an

alternate

location use "alter database rename file 'Old Location' to

'New location';" for each datafile.

 

svrmgr>select * from v$datafile;

 

svrmgr>alter database rename file 'Old Location' to 'New location';

 

4.2. You don't have any online redolog files yet but verify that the

directory exists. You can change the location later.

 

svrmgr>select * from v$logfile;

 

 

5. Then open the database.

 

 

 

6. Start and/or Create Listener (optional).

-------------------------------------------

 

6.1. Check the tnsnames.ora and listner.ora and adapt any hostname/ip

adress to

reflect the new configuration.

 

6.2. To create the listener service just connect to LSNRCTL and start the

listener. If the service isn't created this will create the Listener

and

start it.

 

The name of the Listener is default "listner", you can check it in

the

listner.ora.

 

The name of the listener is the first entry in this file.

 

c:\>LSNRCTL

 

lsnrctl>start name_of_listener

 

You will get some errors if the listener service is not yet created,

but after this use the "status" command to check.

 

lsnrctl>status

 

In the Services summary you will see the SID of your database.

 

6.3. Now try to connect with sql/plus using the alias in the tnsnames.ora.

 

 

7. Problems?

------------

 

If you run into problems verify:

 

-locations (did you made a typo?)

 

-hostname and / or ip adreresses in tnsnames.ora and listner.ora

 

-for ORA-12705 check the ORA-NLS3x in HKLM\SOFTWARE\ORACLE(\HOMEx)

parameter

in the registry. See [NOTE:77442.1] for more info.

 

-that the SYSTEM account of Windows NT has FULL rights to the used

directories.

 

-delete the pwdSID.ora file (!hidden and system attributes) and recreate

it

using orapwd.exe

 

-is your backup valid?

 

-------------------------------------------------------------------------

Δημοσ.

1: O ora7 trexei kapou, ego den exo prosvash. Mporo omos me kapoio tropo na doso entolh na kanoun export sth vash tous. To provlima einai oti to diko mou mhxanima exei 9i r2 kai nomizo pos 8a exoume kanena provlima asumvatothtas :(

 

2: Apo to .dmp arxeio mporo na do olh th vash? tables kai data?

Δημοσ.

Το export sou dinei data, kai pistevw oti prepei na einai back compatible. diladi h ver.9 prepei na vlepei ta data ths ver 7.

 

To mono provlima pou mporei na antimetopiseis einai sta ellhnika px. an h mia ora einai codepage 8859-7 (to syni8es se unix) kai h allh unicode.

alla ayto afora ta data. An h mia einai iso-8859-7 kai h allh windows-1253 den exei provlhma.

dokimase na kaneis 2 export: ena me data, kai ena me adeious pinakes.

 

 

Mporeis na kaneis export

1. olh th database

2. epilegmenous users (me ola tous ta antikeimena)

3. epilegmenous pinakes

 

Mallon esena sou kanei to 2.

 

me exp.exe USER/PASS@INSTANCE

sou kanei interactive erotiseis.

 

me ayth thn entolh kaneis export ola ta objects tou USER.

exp.exe USER/PASS@INSTANCE OWNER=(USER) FILE="D:\MYEXPORT.DMP" LOG="D:\MYEXPORT.log"

 

sto owner =() mporeis na valeis kai allous xrhstes xvrismenous me comma.

 

me parametro : ROWS=N eksageis tous pinakes adeious, xwris data.

 

Oracle utilities export, import manual: http://www-rohan.sdsu.edu/doc/oracle/server803/A54652_01/toc.htm

 

kanonika to .DMP prepei na to kaneis import se mia allh database,

alla an to anoikseis me ena text editor (kalo, oxi to notepad) mporeis na diakrineis mesa ta "CREATE TABLES" statements.

 

An den mporeis, steile mou me email to dmp (to export to ADEIO, me ROWS=N ) prepei na einai mikro arxeio, to poly 100 Kb.

Δημοσ.

Na rotiso, giati sthn periptosh mou to h 2 periptosh einai h katallhlh?

 

Katarxin poso megala einai ta dmp files? Den exo amesh prosvash alla mporei me ena tilefono na ginei kati. Rotao an einai na mou to steiloun me email.

 

Ti les?

Δημοσ.

συνηθως οταν φτιαχνεις μια εφαρμογή , ολοι οι πινακες που θελεις ειναι συγκενρωμενοι κατω απο ενα schema (=user).

 

Σπανιο ειναι να χρησιμοποιεις πινακες διαφόρων χρηστών.

 

Σου λεω να κανεις εξπορτ με παραμετρο OWNER=.. για να βγαλεις μονο αυτους τους πινακες.

Αν ειναι 1,2,3 χρηστες που θελεις θα στο πει ο υπευθυνος τις βασης.

Αυτοι που σου παρηγειλαν την εφαρμογη πρεπει να ξερουν σε ποιο σχημα θα παιξεις.

 

Μην κανεις FULL database export (all users, all objects) γιατι θα σου δωσουν τους χρηστες SYSTEM, SYS και καποιους αλλους που ειναι owners σε system tables που χρειαζεται η oracle για να δουλεψει, ειναι μεγάλοι και δεν αφορουν την εφαρμογή σου.

 

και φυσικα δεν μπορεις να κανεις εξπορτ με επιλεγμενους πινακες γιατι δεν ξερεις ποιους θελεις.

 

Το μεγεθος του dmp εξαρταται απο τα data αν κανεις με ROWS=Y.

δεν ξερω τι μπορει να βγαλει.

Αν σου βγαλει 10 Mb, ta sympiezeis me winrar kai ginetai 1-1.5 Mb.

 

Πες σε πρωτη φαση, να σου κανουν εξπορτ, me ROWS=N

Για το χρηστη/χρηστες που ξέρεις (ή ξέρουν).

. Το αποτέλεσμα θα ειναι πολυ μικρο, και με συμπιεση αμελητέο, περναει ανετα απο email.

Δημοσ.

Oi users 8a einai oi operators h administrators?

 

Na sumplhroso pos uparxei hdh mia efarmogh pou xrisimopoiei thn sugkekrimenh vash, vevaia den ksero an einai se java :) .

 

An upo8esoume pos h efarmogh auth zita username kai password tote ta auta ta stoixeia 8a einai se kapoio table. Auto as poume to table to xreiazomai kai ego gia na kanoun login oi idioi users me ta idia stoixeia.

 

Tote me poion user 8a kano export?

Δημοσ.

Εχεις μπερδεψει καποια πραγματα.

 

Αλλο ο user ths Oracle, kai allo o "user" ths ka8e efarmoghs pou apla xrhsimopoei data apo mia oracle.

 

Παρε παραδειγμα αυτο το φορουμ. Η εφαρμογη ειναι κωδικας PHP, ενω τα μηνυματα, οι χρηστες, ολα τα δεδομενα ειναι αποθηκευμενα σε μια βαση Mysql (που δε διαφερει στη λογικη απο την Ορακλ).

 

Εμεις οι δυο ειμαστε χρηστες της εφαρμογης (Χ.Ε.). οχι χρηστες της βάσης (Χ.Β). δηλαδη εγω δεν μπορω να κανω login στη βαση σαν random, και να κανω "select from ...". δεν με γνωριζει η βαση.

Ο ΧΒ λέγεται αλλιώς και schema.

Ο δημιουργος της εφαρμογης, εχει φτιάξει ένα χρηστη με απεριόριστα δικαιώματα (χοντρικα), ας πουμε ton admin, kai me ayto to XB, ekane create table ολα οσα αφορουν το φορουμ. Αρα λεμε οτι "η εφαρμογή ινσομνια βλέπει το σχημα admin".

Μεταξυ των πινάκων, υπάρχει και ενας πχ. FORUM_USERS που αποθηκεύει τους ΧΕ με τα passwords kai ta ypoloipa stoixeia tous.

 

Με το που μπουτάρει η εφαρμογή (ή ο server) ο ΧΒ admin κάνει αυτόματα login (einai hard coded ston kodika ή σε ενα αρχειο configuration), και μένει συνέχεια μέσα.

Οταν εσυ μπαινεις στο φορουμ με τον ΙΕ, και δινεις user/pass δεν πραγματοποιείται κανενα login στη βάση, απλα κάνει ενα "select from forum_users where user=random and pass=xxx", kai an to query επιστρεψει 1 row, σε αφήνει να "μπεις", αλλιώς όχι.

Ολα τα παραπάνω λέγονται "security σε επίπεδο εφαρμογής" και είναι το συνηθησμένο μοντέλο, το πιο εύκολο σε διαχείρηση και backup.

 

Η διακριση που ρωτας μεταξυ operators h administrators, αυτα ειναι χαρακτηρισμοί για XB. δεν ενδιαφέρουν την εφαρμογή σου.

Εχεις σκοπό να αφήνεις κόσμο να δουλεύει μεσα απο την SQL plus? δε νομίζω.

Αν θέλουν αυτό, να ασχοληθεί ο db admin (αυτοι που θα σου κανουν το εξπορτ), οχι εσυ.

 

Φυσικά είναι δυνατό να υλοποιήσεις "security σε επίπεδο βάσης", οπου καθε ΧΕ, θα είναι και ΧΒ, και τη διαδικασια πιστοποίησης θα την αναλάβει η βάση, αλλα μην το κάνεις. Θα πρεπει να φτιάξεις πολυ πιο σύνθετο κώδικα για τις περιπτώσεις νέου χρηστη, διαγραφή χρήστη. Και το backup της βάσης θα γίνει πολύ πιο μπελάς.

 

Για την αλλη εφαρμογή που λες, πρεπει να γνωρίζεις σε τι επιπεδο εχει το security, σε ποιο πινακα βαζει τους χρηστες, κλπ, τι να σου πώ? ή θα βρεις το source code της, ή να σου πουν αυτοί. Να το μαντέψεις δε γίνεται.

Αν η αλλη εφαρμογή εχει "security σε επίπεδο βάσης", να σου δωσουν μια λίστα με τους XB users που επιτρέπεται να μπουν.

Σε αυτή την περιπτωση, πάλι όλοι οι πινακες της εφαρμογής θα ανοικουν σε ένα χρήστη (px myadmin),

και με αυτόν απο SQL, θα δωσεις τις απαραιτητες εντολες GRANT για τους άλλους.

φτιάχνεις ενα ROLE απο την ορακλ, πχ: MYROLE

δίνεις αυτο το ROLE σε ολους τους XB που θέλεις,

Αν απλα θελεις να βλεπουν data APO TON MYTABLE, χωρις insert, delete, update, δινεις:

GRANT SELECT ON MYADMIN.MYTABLE TO MYROLE;

 

Αν εχει σε "επιπεδο εφαρμογής", να βρεις απλα το ονομα του πινακα για να τον χρησιμοποιεις και εσυ.

 

Me poion 8a kaneis export?

το export θέλει

1) το χρηστη για να συνδεθεί στην ορακλ, αυτον που βαζεις στο "exp.exe USER/PASS@INSTANCE" . αυτος που θα κανει εξπορτ να τον βρεί.

2) το χρήστη/ες του οποιου τους πινακες θα κανεις εξπορτ, που βαζεις στο "OWNER=(USER)" το ποιούς θα βάλεις στο απάντησα προηγουμένως, αναλογα με την "αλλη" εφαρμογη που αναφέρεις.

αυτοί που σου παρήγγειλαν την εφαρμογή δεν ξέρουν?

 

 

 

..

kai telos mhn ksexaseis to poio shmantiko bhma apo ola :

otan teleivseis thn efarmogh kai plhrw8eis, kate8ese ta misa ston logariasmo 111-222-333-444 Alpha Bank 8)

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...