Hej.
Czy da się zrobić tak by mieć bazę na localhost? Baza to Oracle 11g.
Korzystam z SQL Developer.
Mam konto i dostęp uczelniany, a chciałbym wgrać bazę do ćwiczeń.
Jak to w ogóle wygląda z tymi bazami? Można mieć tam jakąś darmową bazę?
Można mieć swoją bazę na oracle'u. Stąd sobie ściągasz link i tyle. Jeśli byś miał problemy rzuć okiem jeszcze Oracle dla mysql'owca
Tak da się zrobić bazę na localhost, i można zakupić sobie darmową bazę danych dla małych potrzeb czy nauki :) . Na pewno ktoś ci dokładniej odpowie jak zrobić bazę na localhost jeśli chodzi o bazy danych takie internetowe to ja korzystałem z gear.host i tam można mieć darmową bazę danych.
Tak da się, wystarczy że tnsy odpowiednio przekierujesz, jeśli coś wcześniej grzebałeś, zdaje się że domyślnie są ustawione na localhost i baza powinna pójść bez ustawień, ale nie jestem pewna. Możesz także korzystać z gotowej bazy, dostępnej już z poziomu czystego oracle. To jest baza hr i trzeba ją odblokować najpierw.
Logujesz się do sqlplusa z cmd, lub włączając bezpośrednio konsolę plsql. musisz się połączyć z oracle
connect system/twoje_haslo
potem
alter user hr account unlock;
a potem ustawiasz hasło dla hr
alter userhr identified by hr;
```
przykładowo i możesz już się zalogować na hr, podając mu hasło hr, domyślna przestrzeń XE i port domyślny 1521.
gear.host, no spoko, ale tam nie ma Oracle 11g...
Oracle Database Express Edition 11g Release 2 - przecież mam już SQL Developera
kate87, strasznie skomplikowana procedura jak dla mnie.
Nie wiem od czego zacząć nawet.
- ściągasz Oracle XE
- instalujesz na SWOIM komputerze
- masz lokalnie
ok, podczas instalacji prosiło mnie o hasło.
Udało mi się poprawić błąd z odpalaniem, jestem teraz w panelu, i nie wiem co mam pisać jako login i hasło.
Ustawiałem tylko hasło.
Przekierowałem plik get started na http://127.0.0.1:8080/apex/f?p=4950
ok, udało mi się zalogować i dodać usera.
Mam przykładową bazę. I chciałbym ją szybko usunąć.
Jest jakiś szybki sposób by usunąć kompletnie wszystko nie zważając na klucze obce?
̶D̶R̶O̶P̶ ̶D̶A̶T̶A̶B̶A̶S̶E̶ ̶D̶a̶t̶a̶b̶a̶s̶e̶N̶a̶m̶e̶;̶
EDIT: @abrakadaber ma rację, nie zaznajomiłem się ze specyfiką Oracle. Poprawne rozwiązanie podał na następnej stronie.
Tylko skąd wziąć jej nazwę?
Nie korzystam z SQL Developera ani z Oracle, ale chyba powinieneś mieć na lewym panelu.
Jeżeli nie to podobno to działa.
select * from v$database;
https://stackoverflow.com/questions/8978047/how-to-query-database-name-in-oracle-sql-developer
W ORACLE NIE MA BAZ DANYCH W TAKIM SENSIE JAK W INNYCH BAZACH! (jest to dość mocne uproszczenie z mojej strony ale oddaje sens filozofii Oracle) W Oracle każdy użytkownik bazy (zakładany poleceniem CREATE USER
) ma jakby swoją przestrzeń w jednej bazie. Oznacza to, że jak się połączymy na usera xxx
to widzimy tabele, widoki, indeksy, itp. usera xxx
a jak się zalogujemy na usera yyy
to widzimy jego tabele, widoki, itp. Standardowo dodawany hr
to jest USER
a nie BAZA
. Baza zakładana przy edycji XE
to właśnie XE
(tak, XE
to nazwa bazy) i jej usunięcie dla niedoświadczonego usera skończy się instalacją całego oracle od nowa.
Suicider napisał(a):
Mam przykładową bazę. I chciałbym ją szybko usunąć.
Jest jakiś szybki sposób by usunąć kompletnie wszystko nie zważając na klucze obce?
DROP USER nazwa_usera_na_ktorego_sie_laczysz_i_chcesz_go_usunac CASCADE;
usunąłem usera hr, teraz nie mogę go dodać. Znaczy się dodałem z poziomu sql plus ak byłem zalogowany na konto systemowe, ale wyskakuje błąd o braku uprawnień, zarówno w konsoli sql plus, jak i sql development.
''user hr lacks create session privilege; logon denied"
edit, ok, przypomniałem sobie o google :)
Tworzymy nowego usera i nadajemy mu uprawnienia: grant create session to the_user;