Сообщения

Показаны сообщения с ярлыком "dbserver"

Linux. Изменить права рекурсивно у всех каталогов

Для изменения прав доступа к файлам и каталогам, оставив только чтение можно так: $ sudo find . -type d -not -name 202* -exec chmod 555 {} \; здесь: -type d - поиск только каталогов -not -name 202* - исключаем каталоги, которые начинаются с 202 (это 2020-2029) -exec chmod 555 {} \; - команда для изменения прав доступа соответственно, если необходимо изменить права только у конкретных каталогов по маске - нужно убрать "-not", оставив "-name"

Создание RAID. Шаги

1. Если уже есть RAID, но из него необходимо пересобрать другой RIAD: 1.1. Размонтировать старый рейд: # umount /dev/md0 1.2. Остановть старый рейд #  mdadm —stop /dev/md0 1.3. Обнулить суперблок на носителях старого рейда # mdadm —zero-superblock /dev/sd[ab]1 1.4. Отформатировать все носители: #  mkfs.ext4 /dev/sda1 #  mkfs.ext4 /dev/sdb1 2. Создаем новый рейд* # mdadm —create —verbose /dev/md2 —level=10 —raid-devices=4 /dev/sda1 /dev/sda2 /dev/sdb1 /dev/sdb2 # mdadm --create --verbose /dev/md0 -l 10 -n 4 dev/sda1 /dev/sda2 /dev/sdb1 /dev/sdb2 3. Смотрим инфу по созданному RAID: # mdadm --detail /dev/md2 4. Форматируем новый рейд: # mkfs.ext4 /dev/md2 5. Добавляем инфу в mdadm.conf # mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm.conf , либо вручную вводим через редактор в файл /etc/mdadm.conf информацию из mdstat: # watch cat /proc/mdstat 6. Создаем точку монтирования: # mkdir /mnt/raid_md2 7. Добавляем информа...

Создать RAID0 на 8tb

Изображение
Для начала получаем информация по дискам: [root@dbserver38 ~]# fdisk -l Disk /dev/sda: 1000.2 GB, 1000204886016 bytes 255 heads, 63 sectors/track, 121601 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot      Start         End      Blocks   Id  System /dev/sda1               1      121601   976760001   83  Linux Disk /dev/sdb: 4000.7 GB, 4000787030016 bytes 255 heads, 63 sectors/track, 486401 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk /dev/sdb doesn't contain a valid partition table Disk /dev/sdc: 1000.2 GB, 1000204886016 bytes 255 heads, 63 sectors/track, 121601 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot      Start         End      Blocks   Id  System /dev/sdc1           ...

TNS-12555: TNS: permission denied. #Listener_живи

Используется: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production PL/SQL Release 11.2.0.4.0 - Production "CORE 11.2.0.4.0 Production" TNS for Linux: Version 11.2.0.4.0 - Production NLSRTL Version 11.2.0.4.0 - Production Проблема: После перезапуска сервера, к схемам(БД) не возможно подключиться, в ошибке вижу что Listener не запущен. При попытке запустить Listener - получаю ошибку: TNS-12555: TNS: permission denied TNS-12560: TNS: protocol adapter error TNS-00525: Insufficient privilege for operation Linux Error: 1: Operation not permitted Решение:  Чтобы исправить ошибку и запустить Listener надо подправить файл listener.ora, закомментировав строку с IPC.  # listener.ora Network Configuration File: /mnt/hd2tb/oracle_ee/product/11.2.0.4/network/admin/listener.ora # Generated by Oracle configuration tools. LISTENER =   (DESCRIPTION_LIST =     (DESCRIPTION =       (ADDRESS = (PROTOCOL = TCP)(HOST ...

Установка СУБД Oracle на Windows

Предварительно: Проверить не осталось ли файлов с прошлой версии (если это переустановка). Т.е. выполнены ли рекомендации из статьи   Удалить Oracle c Windows . Если все в порядке, приступаем к установке.  Описывать весь процесс не буду, так как в Интернете есть большое количество мануалов, как этот например - Установка и настройка Oracle Database 11g . Остановлюсь только на некоторых моментах. Поехали: Ввод e-mail пропускаем В параметрах установки выбираем - Create and configure a database Выбираем Server Class (используется для промышленного использования). Desktop Class - проще в установке, такая база используется для разработки. Выбираем Single instance database installation Выбираем  Typical Database Installation Указываем пути, а также пароль администратора БД (не забыть его) DATABASE NAME: ORACL11B PAS: ***44 Далее жмем "Готово", после чего запускается процесс установки. Log File: C:\Program Files\Oracle\Inventory\logs\installActions<date><time>....

АЦК. Не отображаются сертификаты и ошибки при подключении

Симптомы: Могут не отображаться сертификаты, хотя они добавлены в карточке роли. Может возникать ряд ошибок - типа "Нет доступа к бюджету" / "Нет доступа к объекту ОП" Причина: Некорректное время на одной из машин(либо СП, либо БД). У меня оказалось, что время сбросилось на сервере с БД после перезапуска системы, из-за проблем с батарейкой CMOS. Узнать дату и время можно командой: [root @ dbserver38 ~]#  date Mon Oct 28 11:15:56 +08 2019 Решение: Выставить корректное время

Запуск OEM

Для запуска OEM используется команда: [oracle@dbserver38 playground] $ emctl start dbconsole Oracle Enterprise Manager 11g Database Control Release 11.2.0.4.0  Copyright (c) 1996, 2013 Oracle Corporation.  All rights reserved. https://localhost.localdomain:1158/em/console/aboutApplication Starting Oracle Enterprise Manager 11g Database Control .......

СУБД Oracle. Максимальный размер файла данных (dbf-файл) табличного пространства (tablespace)

Изображение
При увеличении табличного пространства USERS в Oracle возник вопрос: до какого размера может разрастись tablespace и от какого параметра он зависит. На сколько я понял, размер dbf-файла по умолчанию, т.е. когда вы не задаете его размер в строке запроса на создание: ALTER TABLESPACE USERS ADD DATAFILE '/mnt/hd2tb/oracle_ee/oradata/users25.dbf' SIZE 1000 M AUTOEXTEND ON ; будет увеличиваться до 32 ГБ. А максимальное значение его размера зависит от параметра  db_block_size следующим образом: db_block_size   Maximum size in bytes 2048  8,589,932,544  4096  17,179,865,088  8196  34,359,730,176  16,384  68,719,460,352  32,768  137,438,920,704 

"Кракозябры" в терминале (windows 2012)

Изображение
После установки Oracle и открытии sqlplus в CMD отображаются "кракозябры", которые вообще не читаемы и не понятны. Хотя по ошибке ORA можно что-то понять. (наверное) Необходимо сменить кодировку непосредственно перед вызовом sqlplus > set NLS_LANG=russian_cis.ru8pc866

ORACLE. Запросы актуальные

РАБОТА С ДИРЕКТОРИЯМИ -- Посмотрим, какие директории у нас есть SELECT * FROM dba_directories; -- Создадим директорию в linux CREATE DIRECTORY LOG_DIR as '/mnt/hd2tb/oracle_ee/playground/logs'; -- Создадим директорию в Windows CREATE DIRECTORY MY_BACKUP_DIR as 'H:\db_storage'; CREATE DIRECTORY LOG_DIR as 'H:\db_storage\logs'; -- Удаляем директорию(ссылку в Oracle) DROP DIRECTORY LOG_DIR; -- Добавляем доступ пользователю GRANT READ, WRITE ON DIRECTORY cube_dir TO cube; -- Забираем право записи в директорию у пользователя REVOKE WRITE ON DIRECTORY cube_dir FROM cube; -- Разрешим пользователю создавать и удалять директории GRANT CREATE ANY DIRECTORY TO SCOTT; GRANT DROP ANY DIRECTORY TO SCOTT; GRANT CREATE MATERIALIZED VIEW TO SCOTT; РАБОТА С ПОЛЬЗОВАТЕЛЯМИ/СХЕМАМИ -- Выводим список пользователей SELECT * FROM dba_users; -- Выводим список пользователей   SELECT USERNAME,   CREATED FROM dba_users    WHERE ACCOUNT_STATUS = 'OPEN'    ...

VNC Viewer. Использование буфера обмена между Linux и Windows

Изображение
Проблема: При работе на сервере через VNC Viewer не получается копировать куски текста, кода. Поэтому приходится вводить вручную. Решение: Первое решение, которое пока нормально работает. (возможно нужно найти возможность включения какой-либо настройки, но это потом в других вариантах). Необходимо выполнить следующую команду в терминале: [oracle@dbserver38 bin]$ vncconfig -display :1 В результате откроется окно, в котором (при необходимости необходимо поставить чекбоксы) После это можно копировать текст Для удобства, запихал данную команду в sh-файл на рабочем столе - VNC_copy_file.sh

Включить информацию о подключениях к БД в DB_Informer

Смотреть здесь -  https://beepings.blogspot.com/2015/03/oracle.html

Перезагрузить сервер на Linux любой ценой

Изображение
Проблема: При зависании сервера и падении soft-raid10 (выход из стоя дисков) упала производительность системы в целом. То есть видим, что недоступны некоторые файлы и директории. Так вот, команды типа: > Shutdown -r now или > reboot не помогают, система просто не может завершить запущенные ранее операции и пытается что то сделать (прикончить). Поэтому на просторах интернета я нашел статью , в которой предложили аналог кнопки "RESET" на сервере в виде команды: # echo b > /proc/sysrq-trigger При этом, хорошей идеей будет сначала попытается синхронизировать все примонтированные файловые системы: # echo s > /proc/sysrq-trigger

Как я RAID0 познавал

Изображение
История Решили что нужно собрать RAID0 из 3-х дисков. Так как один из 4 дисков, который входил в RAID10 постоянно сбоил и вылетал из RAID. О том как его "засунуть" обратно уже разобрал, но это помогает на некоторое время, а потом снова привет. Причину так и не выяснили: на badblock проверен - без ошибок SATA-кабель поменяли - проблема осталась Осталось 2 варианта -  это либо, что поднимается температура дисков и он просто не выдерживает, либо не выдерживает блок питания (хотя это исключается тем, что постоянно вылетает только диск sdb). Во всяком случае, дальше проверять не стали, так как много трудозатрат и проблем в работе всего филиала. Поэтому собственно и выполняем команды снизу для создания необходимого soft-raid0. [root@dbserver38 ~]# mdadm --create --verbose /dev/md0 --level=raid0 --raid-devices=3 /dev/sda1 /dev/sdc1 /dev/sdd1 mdadm: chunk size defaults to 64K mdadm: /dev/sda1 appears to contain an ext2fs file system size=1953519872K mtime=Mon Dec ...

Восстановление Oracle на DBServer

В связи с отказом RAID10(4 диска) и дальнейшей его преобразовании в RAID0 (из 3 дисков) необходимо установить Oracle для работы с базами данных на этот raid. Полностью я как нибудь потом это попробую сделать, а сейчас наш лайфхак, как собрать Oracle за 30 минут(развернуть его из backup) 1. Первым делом, копируем папки "oracle_ee" и "oraInventory" в папку только что смонтированного raid0. 2. Далее перезапускаем систему для того чтобы она автоматически приняла текущие настройки oracle 3. Запускаем OEM > emctl start dbconsole 4. Переходим по указанному адресу и задаем пароли для пользователей системы (НЕ ЗАБЫВАЕМ ИХ сразу) 5. Создаем схему SCHEMAINFO (есть готовое скриптовое решение, проливать нужно в SQLDeveloper)- для хранения информации по БД Нужно учесть что сначала под пользователем SYS/SYSTEM создаем пользователя SCHEMAINFO, а потом перелогиниваемся под созданным пользователем и создаем таблицы, триггеры, процедуры. 5. ...

WA сервера DBServer

%wa – iowait, процент времени (циклов, секунд), в течение которого процессор простаивал, ожидая завершения операции ввода-вывода. Когда какой-либо процесс или программа запрашивает данные, он сначала проверяет кэш процессора (в нем имеется 2 или 3 кэша), затем проверяет память и, наконец, доходит до диска. Дойдя до диска, процессу или программе обычно приходится ждать, пока поток ввода-вывода передаст информацию в оперативную память, прежде чем иметь возможность снова на нем работать.  Чем медленнее диск, тем выше будет значение IO Wait % для каждого процесса. Это происходит также с процессами записи на диск, если системный буфер заполнен и его необходимо прочистить при помощи ядра – обычно это наблюдается на серверах баз данных с высокой нагрузкой.  Если значение IO Wait стабильно превышает {100 / (кол-во CPU * кол-во процессов)}% , это означает, что, возможно, имеется проблема хранения, с которой необходимо разобраться. Если вы наблюдаете высокую среднюю нагрузку, преж...

hdparm. Узнать все о дисках

Появилась необходимость узнать , какой физический диск относится к смонтированным дискам на dbserver, учитывая что собран RAID10 и нужно вытащить "тот самый диск" который отвалился. Воспользовался утилитой hdparm, ниже возможные параметры: -g Отображает геометрию устройства (цилиндры, головки, сектора), размер (в секторах) устройства. -h Отображение кратко й информации об испо льзовании (помощь). -H Считывает температуру некоторых устройств (большинство Hitachi). Также отображает предупреждение, если температура выше нормы. -i Отображает идентификационную информацию от драйвера устройства. -I Отображает идентификационную информацию прямо от устройства. Более детально. -t Отображает скорость чтения с диска, без кэширования данных. -T Отображает скорость чтения напрямую из кэша Linux буфера, без доступа к диску. А тут для истории,  диски на DBServer (дата: 25.01.2021) [root@dbserver38 ~]# hdparm -I /dev/sda /dev/sda: ATA device, with non-removable media ...