ORA-01033: ORACLE initialization or shutdown in progress
Opublikował: galaxys
Jeżeli pewnego pięknego dnia nie będziesz mógł podłączyć się do bazy danych, a sqlplus wypluje poniższy błąd:
ORA-01033: ORACLE initialization or shutdown in progress
Zastosuj następujące komendy:
z cmd.exe uruchom: sqlplus sys as sysdba
następnie z poziomu sqlplus:
shutdown abort;
startup nomount;
alter database mount;
alter database open;
tutaj może pojawić się error:
ERROR at line 1:
ORA-01113: file 6 needs media recovery
ORA-01110: data file 6: ‘C:\ORACLEXE\ORADATA\XE\PPS.DBF’
Należy wykonać polecenie:
recover datafile ‘C:\ORACLEXE\ORADATA\XE\PPS.DBF’;
i ponownie:
alter database open;
Po tym zabiegu baza powinna już wstać i działać bez problemu
DisableDHCPMediaSense – kabel sieciowy “zawsze” wpięty
Opublikował: galaxys
Jeżeli komputer nie ma aktywnej karty sieciowej to nie możesz lokalnie zamapować drukarki sieciowej jako LPT1.
W tym celu uruchom regedit.exe i w kluczu:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters.
dodaj parametr DWORD o nazwie DisableDHCPMediaSense i nadaj jej wartość “1″
Funkcja Excel – zamiana polskich znaków na łacińskie
Opublikował: galaxys
Funkcja zamieniająca polskie znaki narodowe na ich łacińskie odpowiedniki.
Function CzyscPolskie(Dane As String) As String
Dim i As Integer
polskie = Array("ą", "ć", "ę", "ł", "ń", "ó", "ś", "ż", "ź", "Ą", "Ć", "Ę", "Ł", "Ń", "Ó", "Ś", "Ż", "Ź")
angielskie = Array("a", "c", "e", "l", "n", "o", "s", "z", "z", "A", "C", "E", "L", "N", "O", "S", "Z", "Z")
For i = 0 To 17 Dane = WorksheetFunction.Substitute(Dane, polskie(i), angielskie(i)) Next i
CzyscPolskie = Dane
End Function
KS-PPS Testowo, Kasowanie i zakładania użytkowników
Opublikował: galaxys
W przypadku gdy potrzebujemy potestować bazę KS-PPS przyda się skrypt, który skasuje i założy od nowa użytkowników KS i PPS.
Najpierw logujemy się do bazy:
sqlplus.exe SYSTEM AS SYSDBA
A następnie wklejamy skrypt:
DROP USER PPS CASCADE;
DROP USER KS CASCADE;
CREATE USER KS PROFILE DEFAULT
IDENTIFIED BY ks_password DEFAULT TABLESPACE KS
TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON KS
ACCOUNT UNLOCK;
GRANT CREATE DATABASE LINK TO KS;
GRANT CREATE PUBLIC SYNONYM TO KS;
GRANT CREATE SYNONYM TO KS;
GRANT CREATE TYPE TO KS;
GRANT CREATE MATERIALIZED VIEW TO KS;
GRANT CREATE ROLE TO KS;
GRANT CREATE TABLE TO KS;
GRANT CREATE VIEW TO KS;
GRANT CREATE PROCEDURE TO KS;
GRANT CREATE SEQUENCE TO KS;
GRANT CREATE TRIGGER TO KS;
GRANT CREATE SESSION TO KS;
GRANT EXECUTE ON DBMS_LOCK TO KS WITH GRANT OPTION;
GRANT EXECUTE ON UTL_SMTP TO KS WITH GRANT OPTION;
GRANT CONNECT TO KS;
GRANT RESOURCE TO KS;
CREATE USER PPS PROFILE DEFAULT
IDENTIFIED BY kspps DEFAULT TABLESPACE PPS
TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON PPS
ACCOUNT UNLOCK;
GRANT CREATE DATABASE LINK TO PPS;
GRANT CREATE PUBLIC SYNONYM TO PPS;
GRANT CREATE SYNONYM TO PPS;
GRANT CREATE TYPE TO PPS;
GRANT CREATE MATERIALIZED VIEW TO PPS;
GRANT CREATE ROLE TO PPS;
GRANT CREATE TABLE TO PPS;
GRANT CREATE VIEW TO PPS;
GRANT CREATE PROCEDURE TO PPS;
GRANT CREATE SEQUENCE TO PPS;
GRANT CREATE TRIGGER TO PPS;
GRANT CREATE SESSION TO PPS;
GRANT EXECUTE ON DBMS_LOCK TO PPS WITH GRANT OPTION;
GRANT EXECUTE ON UTL_SMTP TO PPS WITH GRANT OPTION;
GRANT CONNECT TO KS;
GRANT RESOURCE TO KS;
Dwie pierwsze linijki to oczywiście skasowanie użytkowników, ale już kolejne to ich założenie.
Oczywiście nie należy zapomnieć o odtworzeniu danych z backupów.
Windows Scheduled Tasks – cmd.exe doesn’t work
Opublikował: galaxys
Jeżeli ustawiasz pod systemem Scheduled Tasks i ma być uruchomiony skrypt cmd, bat, lub wywołany progrm cmd.exe, a na dodatek proces ma być uruchomiony z uprawnieniami zwykłego użytkownika to pamiętaj, aby nadać uzytkownikowi prawo “Read & Execute” do programu c:\WINDOWS\System32\cmd.exe.
Domyślnie tylko użytkownicy interaktywni mogą uruchamiać ten program.
OpenVMS – Restart kolejki/drukarki
Opublikował: galaxys
Polecenia potrzebne do restartu kolejki pod OpenVMS:
- Przegląd kolejki
show queue nazwa_kolejki /all
- Stop kolejki:
stop/reset nazwa_kolejki
- Kasowanie wydruków (numery wydruków wyświetlają się po wydaniu plecenia “show queue nazwa_kolejki /all”)
delete /entry=6009631
lub wiele wydruków na raz
delete /entry=(6009631,6009632,6009633,6009634)
- Start kolejki:
start /queue nazwa_kolejki
Naprawa bazy Lotus Notes z konsoli
Opublikował: galaxys
load fixup -f mail\cexport.nsf
load compact -i -c -d -K mail\cexport.nsf
load updall -R mail\cexport.nsf
Pomaga gdy wystąpi np. taki bład:
“DATABASE CORRUPT-CANNOT ALLOCATE SPACE”
IIS SharePointServices 3.0
Opublikował: galaxys
Jeżeli pewnego dnia pojawi się w Twojej przeglądarce poniższy błąd:
“This page has encountered a critical error. Contact your system administrator if this problem persists”
a w logach aplikacji odłoży się następujący wpis:
Event Type: Error
Event Source: Windows SharePoint Services 3
Event Category: Runtime
Event ID: 6614
Date: 4/30/2008
Time: 8:30:33 AM
User: N/A
Computer: SERVERNAME
Description:
Safe mode did not start successfully.
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Znajdź plik web.config odpowiadający za virtualny serwer SharePoint. Domyślnie może byc umieszczony tutaj:
C:\Inetpub\wwwroot\wss\VirtualDirectories\80
Zrób jego kopię i wyedytuj w notatniku.
Znajdź linijkę:
i zamień wpis:
WSS_Minimal na WSS_Medium
Powinno pomóc
Raport z ActiveDirectory
Opublikował: galaxys
Jeżeli chcesz zrobić raport z ActiveDirectory z wybranymi użytkownikami użyj następujących poleceń
dsquery user OU=GAR,DC=EU,DC=AVONET,DC=NET -limit 0| dsget user -dn -samid -
empid -fn -ln -display -email -disabled > c:\wynik.txt
Powyższe polecenie składa się z trzech części.
1. polecenie dsquery.exe – służy do wybrania interesujących nas obiektów z AD.
2. polecenie dsget.exe – na podstawie zwracanych danych z dsquery wyrzuca nam interesujące nas pola danego obiektu AD
3. przekierowanie wyjścia >c:\folder\wynik.txt – powoduje przekierowanie wyników do pliku tekstowego.
Opis poleceń:
KS-PPS – Disaster Recovery Plan
Opublikował: galaxys
Przy tego typu danych powinien byc zapewniony jakiś mechanizm tworzenia kopii zapasowych i co najważniejsze mechanizm ich poprawnego odzyskiwania.
O ile od biedy program KS-PPS posiada mechanizm do tworzenia backupu, pod warunkiem, że baza Oracle i program klienta znajdują się na tej samej maszynie. W innym przypadku, tak jak u mnie, należy postąpić nieco inaczej.
1. Zabezpieczenie danych – BACKUP.
Na komputerze, na którym będzie robiony proces backupu powiniśmy mieć zainstalowaną bazę Oracle. Jeżeli jest to komputer inny niż serwer bazy KS-PPS to po zainstalowaniu Oracle’a możeby wyłączyć jego serwis i skasować pliki bazy danych. Odzyskamy ponad 1 GB na dysku, a będziemy mieli potrzebne narzędzia do tworzenia i zarządzania danymi. Przy procesie tworzenia kopii zapasowych skorzystamy z programu exp.exe zawartego w folderze: C:\oraclexe\app\oracle\product\10.2.0\server\BIN\exp.exe
Pamiętajmy jednak przed tym, żeby plik TNSNAMES.ORA wskazywał na poprawny serwer. Po instalacji serwera, nawet jeżeli będzie wyłączony, obowiązuje plik znajdujący się tutaj: C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN\tnsnames.ora
Wystarczy w sekcji:
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = galaxy1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
wpisać odpowiedni adres w polu HOST.
Teraz proponuję wykorzystać skrypt KSPPS_Backup_DB_Oracle, który wykona zrzut bazy danych KS i PPS do plików. Pliki będa miały w nazwie datę i czas utworzenia. (Po jego downloadzie proszę zmienić rozszerzenie z txt na cmd)
Jedyne co powinniśmy w nim zmienić to ścieżkę do katalogu z kopiami. Uruchom go, zostaniesz poproszony o wpisanie haseł dwóch użytkowników – KS i PPS.
Po chwili
kopie wraz z logami sa zapisane na dysku. Możesz je nagrać na CD lub schować w bezpieczne miejsce.
2. ODTWARZANIE danych.
Moja propozycja wygląda następująco.
Instalujesz program KS-PPS i wybierasz instalacje serwerową. Chyba, że już masz zainstalowanego Oracle’a – to wybierasz tylko tworzenie danych w istniejącej bazie.
Teraz musimy skasować istniejących użytkowników KS i PPS. Proponuję zrobić to przez stronę www. Adres: http://127.0.0.1:8080/apex, ewentualnie zmieniamy adres maszyny. Logujemy sie na użytkownika SYSTEM, hasło jest takie jak podane podczas instalacji. Przechodzimy do menu: Administration \ Database Users. Klikamy na kasowanym użytkowniku. Klikamy przycisk Drop, zaznaczamy przełącznik Cascade i wciskamy przycisk Drop User. W zależności od szybkości serwera operacje mogę trwać około minuty.
Po ich skasowaniu należy założyć nowe konta.
Polecam użyć do tego programu sqlplus.exe znajdującego się w folderze serwera Oracle.
C:\oraclexe\app\oracle\product\10.2.0\server\BIN
Ale po kolei: Uruchamiamy okno cmd.exe
przechodzimy do folderu BIN poleceniem
C:\
cd \oraclexe\app\oracle\product\10.2.0\server\BIN
Oczywiście dotyczy to domyślnej instalacji na komputerze z zainstalowanym systemem Windows.
teraz musimy zalogować się do bazy jako SYSDBA.
Wykonujemy polecenie:
sqlplus SYSTEM@XE AS SYSDBA
i w okno programu wklejamy zawartość pliku: KSPPS – Create User.
Można też zrobić to w jednej linii ale trzeba jawnie użyć hasła.
sqlplus SYSTEM/password@XE AS SYSDBA < sqlplus_SYSTEM_SYSDBA.txt
Jeżeli plik sqlplus_SYSTEM_SYSDBA.txt znajduje sie w innym folderze niż aktualny to przed nim trzeba podać bezwzględną ścieżkę do niego.
Teraz kolej na import danych.
Nie wychodząc z folderu BIN wykonujemy następujące polecenia (uwaga!!! ważna jest kolejność importu, najpierw KS, a potem PPS):
imp.exe KS@XE FILE=”KS_Backup.dat”
imp.exe PPS@XE FILE=”PPS_Backup.dat”
W międzyczasie zostaniemy poproszeni o wpisanie stosownych haseł i na koniec powinna pojawić się linijka, że odzyskanie danych odbyło się “without error”. Oczywiście nazwy plików mogą sie różnić i w zależności od ich umiejscowienia należy podać stosowna ścieżkę dostępu.
Oryginalna instalacja nie przewiduje aby użytkownicy mieli nadane niektóre uprawnienia i przed uruchomieniem programu można je zdjąć. Nie przedstawiam tutaj skryptu, można to zrobić przez stronę www. Uprawnienia do odebrania:
- CREATE PUBLIC SYNONYM
- CREATE TYPE
- CREATE MATERIALIZED VIEW
- CREATE ROLE
Jednak jeśli ktoś jest w tanie mi pomóc to będę bardzo wdzięczny za zamianę kliknięć na stronie www na skrypty SQL.
