Oracle: различия между версиями
Sirmax (обсуждение | вклад) (→Ссылки) |
Sirmax (обсуждение | вклад) (→Ссылки) |
||
(не показано 15 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | [[Категория:Oracle]] |
||
+ | [[Категория:Solaris]] |
||
+ | |||
=Заметки по установке и работе с Oracle= |
=Заметки по установке и работе с Oracle= |
||
+ | ==Установка ORACLE 10 на Solaris== |
||
+ | ===Подготовка к установке=== |
||
+ | * добавить пользователя oracle, задать ему пароль |
||
+ | {{Root|<nowiki>useradd -d /export/home/oracle -m -s /usr/bin/bash oracle</nowiki>}} |
||
+ | {{Root|<nowiki>passwd oracle</nowiki>}} |
||
+ | * создать 2 группы, dba и oinstall (назначение второй - мне не ясно), добавить пользователя в группы |
||
+ | {{Root|<nowiki>grouppadd dba</nowiki>}} |
||
+ | {{Root|<nowiki>grouppadd oinstall</nowiki>}} |
||
+ | {{Root|<nowiki>usermod -g dba -G oinstall oracle</nowiki>}} |
||
+ | * проверить наличие свободного места. (в моем случае - в разделе /export) |
||
+ | * установить значения переменных окружения (я вписал их как в .profile так ив .bashrc): |
||
+ | <PRE> |
||
+ | # su - oracle |
||
+ | Sun Microsystems Inc. SunOS 5.10 Generic January 2005 |
||
+ | -bash-3.00$ env |
||
+ | HZ= |
||
+ | SHELL=/usr/bin/bash |
||
+ | TERM=xterm |
||
+ | TMPDIR=/tmp |
||
+ | ORACLE_SID=orcl |
||
+ | ORACLE_BASE=/export/home/oracle |
||
+ | MAIL=/usr/mail/oracle |
||
+ | PATH=/export/home/oracle/10g/bin:/usr/bin: |
||
+ | PWD=/export/home/oracle |
||
+ | TZ=EET |
||
+ | SHLVL=1 |
||
+ | HOME=/export/home/oracle |
||
+ | TMP=/tmp |
||
+ | LOGNAME=oracle |
||
+ | DISPLAY=localhost:0.0 |
||
+ | ORACLE_HOME=/export/home/oracle/10g |
||
+ | </PRE> |
||
+ | * Заливаю инсталляционные файлы по ftp (сразу в каталог oracle, вся инсталляция будет проходить под аккаунтом oracle) |
||
+ | * Запускаю инсталлятор. |
||
+ | |||
+ | ===Установка=== |
||
+ | В процессе установки инсталлятор проверит парамеры системы (отдельно параметры ядра, править в файле /etc/system), место на диске и прочее. После чего запуститься процесс установки.<BR> |
||
+ | Инсталлятор попросит запустить от рута 1 файл (скрипт) для установки бинарников в /usr/local/bin<BR> |
||
+ | Внимание: Обязательно убедиться что переменные окружения и особенно ORACLE_SID установлены верно. Без этого скрипт |
||
+ | <PRE> |
||
+ | bash-3.00$ /export/home/oracle/10g/bin/emctl start dbconsole |
||
+ | </PRE> |
||
+ | завершиться с ошибкой. Мне пришлось подправить переменную на ходу и перезапустить скрипт. |
||
+ | |||
+ | Сама установка заняла у меня около 1 часа. |
||
+ | ===Post-install=== |
||
+ | В файле /$ORACLE_HOME/10g/bin/dbstart (строка 77) |
||
+ | <PRE> |
||
+ | #ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle |
||
+ | ORACLE_HOME_LISTNER=$ORACLE_HOME |
||
+ | </PRE> |
||
+ | |||
+ | ==Создание базы данных== |
||
+ | Насколько я смог понять (ошибаюсь?) в отличии от MySQL каждая база данных обслуживается своим процессом (instance) |
||
+ | |||
+ | В моем случае я делал это для пользователя oracle (в противном случае, вероятно, не получиться подключиться к базе как sysdba) |
||
+ | === Вариант один === |
||
+ | <PRE> |
||
+ | export ORACLE_SID=test |
||
+ | export ORACLE_HOME=/path/to/oracle/home |
||
+ | </PRE> |
||
+ | |||
+ | Create a minimal init.ora |
||
+ | <PRE> |
||
+ | # $ORACLE_HOME/dbs/init<sid>.ora |
||
+ | control_files = (/path/to/control1.ctl,/path/to/control2.ctl,/path/to/control3.ctl) |
||
+ | undo_management = AUTO |
||
+ | undo_tablespace = UNDOTBS1 |
||
+ | db_name = test |
||
+ | db_block_size = 8192 |
||
+ | sga_max_size = 1073741824 #one gig |
||
+ | sga_target = 1073741824 #one gig |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | Create a password file |
||
+ | <PRE> |
||
+ | $ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/pwd<sid>.ora password=oracle entries=5 |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | Start the instance |
||
+ | <PRE> |
||
+ | sqlplus / as sysdba |
||
+ | startup nomount |
||
+ | </PRE> |
||
+ | |||
+ | Create the database |
||
+ | <PRE> |
||
+ | create database test |
||
+ | logfile group 1 ('/path/to/redo1.log') size 100M, |
||
+ | group 2 ('/path/to/redo2.log') size 100M, |
||
+ | group 3 ('/path/to/redo3.log') size 100M |
||
+ | character set WE8ISO8859P1 |
||
+ | national character set utf8 |
||
+ | datafile '/path/to/system.dbf' size 500M autoextend on next 10M maxsize unlimited extent management local |
||
+ | sysaux datafile '/path/to/sysaux.dbf' size 100M autoextend on next 10M maxsize unlimited |
||
+ | undo tablespace undotbs1 datafile '/path/to/undotbs1.dbf' size 100M |
||
+ | default temporary tablespace temp tempfile '/path/to/temp01.dbf' size 100M; |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | Note: there's some other things you can do here, like "ARCHIVELOG" "SET TIME_ZONE =" and "USER SYS IDENTIFIED BY password" and "USER SYSTEM IDENTIFIED BY password" |
||
+ | |||
+ | |||
+ | |||
+ | 6. Run catalog and catproc |
||
+ | <PRE> |
||
+ | @?/rdbms/admin/catalog.sql |
||
+ | @?/rdbms/admin/catproc.sql |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | 7. Change passwords |
||
+ | <PRE> |
||
+ | alter user sys identified by whatever; |
||
+ | </PRE> |
||
+ | <PRE> |
||
+ | alter user system identified by whatever; |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | ===OMF: minimal manual Oracle create database syntax=== |
||
+ | |||
+ | |||
+ | |||
+ | Set your ORACLE_SID |
||
+ | <PRE> |
||
+ | export ORACLE_SID=test |
||
+ | export ORACLE_HOME=/path/to/oracle/home |
||
+ | </PRE> |
||
+ | |||
+ | Create a minimal init.ora |
||
+ | <PRE> |
||
+ | # $ORACLE_HOME/dbs/init<sid>.ora |
||
+ | |||
+ | control_files = (/path/to/control1.ctl,/path/to/control2.ctl,/path/to/control3.ctl) |
||
+ | undo_management = AUTO |
||
+ | db_name = test |
||
+ | db_block_size = 8192 |
||
+ | sga_max_size = 1073741824 #one gig |
||
+ | sga_target = 1073741824 #one gig |
||
+ | db_create_file_dest = /path/to/datafile/location #OMF |
||
+ | db_create_online_log_dest_1 = /path/to/first/redo_and_control_file/location #OMF |
||
+ | db_create_online_log_dest_2 = /path/to/second/redo_and_control_file/location #OMF |
||
+ | db_recovery_file_dest = /path/to/flash/recovery/area #OMF |
||
+ | #note it’s a good idea to also have background_dump_dest, user_dump_dest, and core_dump_dest here as well |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | 3. Create a password file |
||
+ | <PRE> |
||
+ | $ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/pwd<sid>.ora password=oracle entries=5 |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | 4. Start the instance |
||
+ | <PRE> |
||
+ | sqlplus / as sysdba |
||
+ | startup nomount |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | 5. Create the database |
||
+ | <PRE> |
||
+ | create database test |
||
+ | character set WE8ISO8859P1 |
||
+ | national character set utf8 |
||
+ | undo tablespace undotbs1 |
||
+ | default temporary tablespace temp; |
||
+ | </PRE> |
||
+ | |||
+ | You can even do this and it will work, the ultimate in minimalism: |
||
+ | <PRE> |
||
+ | create database test; |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | Note: There's some other things you can do here, like "ARCHIVELOG" "SET TIME_ZONE =" and "USER SYS IDENTIFIED BY password" and "USER SYSTEM IDENTIFIED BY password" |
||
+ | |||
+ | Note 2: This is so minimal because you are using Oracle Managed Files as seen in #2 |
||
+ | |||
+ | |||
+ | |||
+ | 6. Run catalog and catproc |
||
+ | <PRE> |
||
+ | @?/rdbms/admin/catalog.sql |
||
+ | |||
+ | @?/rdbms/admin/catproc.sql |
||
+ | </PRE> |
||
+ | |||
+ | Standard create Oracle database syntax |
||
+ | |||
+ | After creating your init.ora file with the appropriate parameters you can use the "create database" command in SQL*Plus to create a database: |
||
+ | |||
+ | Make sure that your have your $ORACLE_HOME and $ORACLE_SID set properly and that you sign-on as SYSDBA: |
||
+ | |||
+ | <PRE> |
||
+ | startup nomount; |
||
+ | </PRE> |
||
+ | |||
+ | <PRE> |
||
+ | CREATE CONTROLFILE REUSE DATABASE "OLDLSQ" NORESETLOGS |
||
+ | NOARCHIVELOG |
||
+ | MAXLOGFILES 16 |
||
+ | MAXLOGMEMBERS 2 |
||
+ | MAXDATAFILES 240 |
||
+ | MAXINSTANCES 1 |
||
+ | MAXLOGHISTORY 113 |
||
+ | LOGFILE |
||
+ | GROUP 1 ('/u03/oradata/oldlsq/log1a.dbf', |
||
+ | '/u03/oradata/olslsq/log1b.dbf') SIZE 30M, |
||
+ | GROUP 2 ('/u04/oradata/oldlsq/log2a.dbf', |
||
+ | '/u04/oradata/oldlsq/log2b.dbf') SIZE 30M |
||
+ | DATAFILE |
||
+ | '/u01/oradata/oldlsq/system01.dbf', |
||
+ | '/u01/oradata/oldlsq/mydatabase.dbf' |
||
+ | ; |
||
+ | </PRE> |
||
− | Все сказанное касается версии 10 если не сказано обратное. |
||
==Полезные комманды== |
==Полезные комманды== |
||
Все комманды вводить после su - oracle |
Все комманды вводить после su - oracle |
||
Строка 60: | Строка 281: | ||
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=solaris-test.))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.2.2)(PORT=1521))) |
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=solaris-test.))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.2.2)(PORT=1521))) |
||
OK (10 msec) |
OK (10 msec) |
||
+ | </PRE> |
||
+ | |||
+ | ==Файлы и их назначение== |
||
+ | <PRE> |
||
+ | /var/opt/oracle/oratab |
||
+ | </PRE> |
||
+ | <PRE> |
||
+ | # |
||
+ | # This file is used by ORACLE utilities. It is created by root.sh |
||
+ | # and updated by the Database Configuration Assistant when creating |
||
+ | # a database. |
||
+ | |||
+ | # A colon, ':', is used as the field terminator. A new line terminates |
||
+ | # the entry. Lines beginning with a pound sign, '#', are comments. |
||
+ | # |
||
+ | # Entries are of the form: |
||
+ | # $ORACLE_SID:$ORACLE_HOME:<N|Y>: |
||
+ | # |
||
+ | # The first and second fields are the system identifier and home |
||
+ | # directory of the database respectively. The third filed indicates |
||
+ | # to the dbstart utility that the database should , "Y", or should not, |
||
+ | # "N", be brought up at system boot time. |
||
+ | # |
||
+ | # Multiple entries with the same $ORACLE_SID are not allowed. |
||
+ | # |
||
+ | # |
||
+ | orcl:/export/home/oracle/10g:Y |
||
</PRE> |
</PRE> |
||
Строка 65: | Строка 313: | ||
*Схема (Schema) - коллекция объектов БД. (аналог database в mysql ? ) |
*Схема (Schema) - коллекция объектов БД. (аналог database в mysql ? ) |
||
+ | ==Использованное место== |
||
+ | <PRE> |
||
+ | select tsu.tablespace_name, ceil(tsu.used_mb) "size MB" |
||
+ | , decode(ceil(tsf.free_mb), NULL,0,ceil(tsf.free_mb)) "free MB" |
||
+ | , decode(floor(tsu.used_mb- tsf.free_mb), NULL,0,floor(tsu.used_mb- tsf.free_mb)) "used MB" |
||
+ | , decode(100 - ceil(tsf.free_mb/tsu.used_mb*100), NULL, 100, |
||
+ | 100 - ceil(tsf.free_mb/tsu.used_mb*100)) || ' %' "% used" |
||
+ | from (select tablespace_name, sum(bytes)/1024/1024 used_mb |
||
+ | from dba_data_files group by tablespace_name ) tsu |
||
+ | , (select tablespace_name, sum(bytes)/1024/1024 free_mb |
||
+ | from dba_free_space group by tablespace_name) tsf |
||
+ | where tsu.tablespace_name = tsf.tablespace_name (+) |
||
+ | order by (decode(100 - ceil(tsf.free_mb/tsu.used_mb*100), NULL, 100, 100 - ceil(tsf.free_mb/tsu.used_mb*100))) desc |
||
+ | [15:08:00] Oleg YUrchenko: http://www.dba.az/index.php?option=com_content&view=article&id=58:dbafreespace-misunderstanding-how-oracle-populates-it&catid=35:oracle-articles&Itemid=65 |
||
+ | </PRE> |
||
==Ссылки== |
==Ссылки== |
||
− | *[http://www.solaris10.ru/cms/56.html Установка на Солярис 10 (я ставил практически по этому документу)] |
+ | * [http://www.solaris10.ru/cms/56.html Установка на Солярис 10 (я ставил практически по этому документу)] |
+ | * http://www.sql.ru/Forum/actualthread.aspx?tid=762404 |
Текущая версия на 16:15, 21 июня 2011
Заметки по установке и работе с Oracle
Установка ORACLE 10 на Solaris
Подготовка к установке
- добавить пользователя oracle, задать ему пароль
- создать 2 группы, dba и oinstall (назначение второй - мне не ясно), добавить пользователя в группы
- проверить наличие свободного места. (в моем случае - в разделе /export)
- установить значения переменных окружения (я вписал их как в .profile так ив .bashrc):
# su - oracle Sun Microsystems Inc. SunOS 5.10 Generic January 2005 -bash-3.00$ env HZ= SHELL=/usr/bin/bash TERM=xterm TMPDIR=/tmp ORACLE_SID=orcl ORACLE_BASE=/export/home/oracle MAIL=/usr/mail/oracle PATH=/export/home/oracle/10g/bin:/usr/bin: PWD=/export/home/oracle TZ=EET SHLVL=1 HOME=/export/home/oracle TMP=/tmp LOGNAME=oracle DISPLAY=localhost:0.0 ORACLE_HOME=/export/home/oracle/10g
- Заливаю инсталляционные файлы по ftp (сразу в каталог oracle, вся инсталляция будет проходить под аккаунтом oracle)
- Запускаю инсталлятор.
Установка
В процессе установки инсталлятор проверит парамеры системы (отдельно параметры ядра, править в файле /etc/system), место на диске и прочее. После чего запуститься процесс установки.
Инсталлятор попросит запустить от рута 1 файл (скрипт) для установки бинарников в /usr/local/bin
Внимание: Обязательно убедиться что переменные окружения и особенно ORACLE_SID установлены верно. Без этого скрипт
bash-3.00$ /export/home/oracle/10g/bin/emctl start dbconsole
завершиться с ошибкой. Мне пришлось подправить переменную на ходу и перезапустить скрипт.
Сама установка заняла у меня около 1 часа.
Post-install
В файле /$ORACLE_HOME/10g/bin/dbstart (строка 77)
#ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle ORACLE_HOME_LISTNER=$ORACLE_HOME
Создание базы данных
Насколько я смог понять (ошибаюсь?) в отличии от MySQL каждая база данных обслуживается своим процессом (instance)
В моем случае я делал это для пользователя oracle (в противном случае, вероятно, не получиться подключиться к базе как sysdba)
Вариант один
export ORACLE_SID=test export ORACLE_HOME=/path/to/oracle/home
Create a minimal init.ora
# $ORACLE_HOME/dbs/init<sid>.ora control_files = (/path/to/control1.ctl,/path/to/control2.ctl,/path/to/control3.ctl) undo_management = AUTO undo_tablespace = UNDOTBS1 db_name = test db_block_size = 8192 sga_max_size = 1073741824 #one gig sga_target = 1073741824 #one gig
Create a password file
$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/pwd<sid>.ora password=oracle entries=5
Start the instance
sqlplus / as sysdba startup nomount
Create the database
create database test logfile group 1 ('/path/to/redo1.log') size 100M, group 2 ('/path/to/redo2.log') size 100M, group 3 ('/path/to/redo3.log') size 100M character set WE8ISO8859P1 national character set utf8 datafile '/path/to/system.dbf' size 500M autoextend on next 10M maxsize unlimited extent management local sysaux datafile '/path/to/sysaux.dbf' size 100M autoextend on next 10M maxsize unlimited undo tablespace undotbs1 datafile '/path/to/undotbs1.dbf' size 100M default temporary tablespace temp tempfile '/path/to/temp01.dbf' size 100M;
Note: there's some other things you can do here, like "ARCHIVELOG" "SET TIME_ZONE =" and "USER SYS IDENTIFIED BY password" and "USER SYSTEM IDENTIFIED BY password"
6. Run catalog and catproc
@?/rdbms/admin/catalog.sql @?/rdbms/admin/catproc.sql
7. Change passwords
alter user sys identified by whatever;
alter user system identified by whatever;
OMF: minimal manual Oracle create database syntax
Set your ORACLE_SID
export ORACLE_SID=test export ORACLE_HOME=/path/to/oracle/home
Create a minimal init.ora
# $ORACLE_HOME/dbs/init<sid>.ora control_files = (/path/to/control1.ctl,/path/to/control2.ctl,/path/to/control3.ctl) undo_management = AUTO db_name = test db_block_size = 8192 sga_max_size = 1073741824 #one gig sga_target = 1073741824 #one gig db_create_file_dest = /path/to/datafile/location #OMF db_create_online_log_dest_1 = /path/to/first/redo_and_control_file/location #OMF db_create_online_log_dest_2 = /path/to/second/redo_and_control_file/location #OMF db_recovery_file_dest = /path/to/flash/recovery/area #OMF #note it’s a good idea to also have background_dump_dest, user_dump_dest, and core_dump_dest here as well
3. Create a password file
$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/pwd<sid>.ora password=oracle entries=5
4. Start the instance
sqlplus / as sysdba startup nomount
5. Create the database
create database test character set WE8ISO8859P1 national character set utf8 undo tablespace undotbs1 default temporary tablespace temp;
You can even do this and it will work, the ultimate in minimalism:
create database test;
Note: There's some other things you can do here, like "ARCHIVELOG" "SET TIME_ZONE =" and "USER SYS IDENTIFIED BY password" and "USER SYSTEM IDENTIFIED BY password"
Note 2: This is so minimal because you are using Oracle Managed Files as seen in #2
6. Run catalog and catproc
@?/rdbms/admin/catalog.sql @?/rdbms/admin/catproc.sql
Standard create Oracle database syntax
After creating your init.ora file with the appropriate parameters you can use the "create database" command in SQL*Plus to create a database:
Make sure that your have your $ORACLE_HOME and $ORACLE_SID set properly and that you sign-on as SYSDBA:
startup nomount;
CREATE CONTROLFILE REUSE DATABASE "OLDLSQ" NORESETLOGS NOARCHIVELOG MAXLOGFILES 16 MAXLOGMEMBERS 2 MAXDATAFILES 240 MAXINSTANCES 1 MAXLOGHISTORY 113 LOGFILE GROUP 1 ('/u03/oradata/oldlsq/log1a.dbf', '/u03/oradata/olslsq/log1b.dbf') SIZE 30M, GROUP 2 ('/u04/oradata/oldlsq/log2a.dbf', '/u04/oradata/oldlsq/log2b.dbf') SIZE 30M DATAFILE '/u01/oradata/oldlsq/system01.dbf', '/u01/oradata/oldlsq/mydatabase.dbf' ;
Полезные комманды
Все комманды вводить после su - oracle
lsnrctl status
bash-3.00$ lsnrctl status LSNRCTL for Solaris: Version 10.2.0.1.0 - Production on 27-MAY-2010 10:55:05 Copyright (c) 1991, 2005, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Solaris: Version 10.2.0.1.0 - Production Start Date 27-MAY-2010 09:25:39 Uptime 0 days 1 hr. 29 min. 25 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /oracle/10g/network/admin/listener.ora Listener Log File /oracle/10g/network/log/listener.log Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=solaris-test)(PORT=1521))) Services Summary... Service "PLSExtProc" has 1 instance(s). Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully
bash-3.00$ tnsping test-solaris
TNS Ping Utility for Solaris: Version 10.2.0.1.0 - Production on 27-MAY-2010 11:00:22 Copyright (c) 1997, 2005, Oracle. All rights reserved. Used parameter files: /oracle/10g/network/admin/sqlnet.ora TNS-03505: Failed to resolve name bash-3.00$ tnsping solaris-test TNS Ping Utility for Solaris: Version 10.2.0.1.0 - Production on 27-MAY-2010 11:00:29 Copyright (c) 1997, 2005, Oracle. All rights reserved. Used parameter files: /oracle/10g/network/admin/sqlnet.ora Used EZCONNECT adapter to resolve the alias Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=solaris-test.))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.2.2)(PORT=1521))) OK (10 msec)
Файлы и их назначение
/var/opt/oracle/oratab
# # This file is used by ORACLE utilities. It is created by root.sh # and updated by the Database Configuration Assistant when creating # a database. # A colon, ':', is used as the field terminator. A new line terminates # the entry. Lines beginning with a pound sign, '#', are comments. # # Entries are of the form: # $ORACLE_SID:$ORACLE_HOME:<N|Y>: # # The first and second fields are the system identifier and home # directory of the database respectively. The third filed indicates # to the dbstart utility that the database should , "Y", or should not, # "N", be brought up at system boot time. # # Multiple entries with the same $ORACLE_SID are not allowed. # # orcl:/export/home/oracle/10g:Y
Термины
- Схема (Schema) - коллекция объектов БД. (аналог database в mysql ? )
Использованное место
select tsu.tablespace_name, ceil(tsu.used_mb) "size MB" , decode(ceil(tsf.free_mb), NULL,0,ceil(tsf.free_mb)) "free MB" , decode(floor(tsu.used_mb- tsf.free_mb), NULL,0,floor(tsu.used_mb- tsf.free_mb)) "used MB" , decode(100 - ceil(tsf.free_mb/tsu.used_mb*100), NULL, 100, 100 - ceil(tsf.free_mb/tsu.used_mb*100)) || ' %' "% used" from (select tablespace_name, sum(bytes)/1024/1024 used_mb from dba_data_files group by tablespace_name ) tsu , (select tablespace_name, sum(bytes)/1024/1024 free_mb from dba_free_space group by tablespace_name) tsf where tsu.tablespace_name = tsf.tablespace_name (+) order by (decode(100 - ceil(tsf.free_mb/tsu.used_mb*100), NULL, 100, 100 - ceil(tsf.free_mb/tsu.used_mb*100))) desc [15:08:00] Oleg YUrchenko: http://www.dba.az/index.php?option=com_content&view=article&id=58:dbafreespace-misunderstanding-how-oracle-populates-it&catid=35:oracle-articles&Itemid=65