моя контактная информация
Почтамезофия@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Реляционная база данных — это структурированная база данных, созданная на основе базы данных реляционной модели и ориентированная на записи.
Распространенные реляционные базы данных: Oracle, MySQL, SQL Server, Microsoft Access, DB2.
NOSQL=Not Only SQL — это общий термин для нереляционных баз данных. В зависимости от способа хранения, структуры хранения и сценариев использования ее называют нереляционной базой данных. Базы данных, отличные от основных реляционных баз данных, можно назвать нереляционными базами данных.
Распространенные нереляционные базы данных: Redis, MongoDB, Hbase, CouhDB.
Redis — это база данных Nosql с открытым исходным кодом, написанная на языке C. Она работает на основе памяти и поддерживает постоянную форму хранения. Его номер порта — 6379.
1. Установите Редис
[root@localhost ~]# systemctl остановить firewalld
[root@localhost ~]# setenforce 0
[root@localhost ~]# yum -y install gcc* zlib-devel
[root@localhost ~]#tar xvzf redis-4.0.9.tar.gz
[root@localhost ~]#компакт-диск redis-4.0.9/
[root@localhost redis-4.0.9]# сделать
Уведомление:
После make будет сгенерировано сообщение об ошибке.
решение:
Решение 1. Используйте make MALLOC=libc, чтобы указать распределитель памяти для компиляции libc.
Решение 2: сделать очистку && сделать distclean
[root@localhost redis-4.0.9]# make PREFIX=/usr/local/redis install
[root@localhost утилиты]# ln -s /usr/local/redis/bin/* /usr/local/bin/
[root@localhost redis-4.0.9]# cd utils/
Среди них: install_server.sh — скрипт инициализации.
[root@localhost утилиты]# ./install_server.sh
Выберите путь к исполняемому файлу redis [] /usr/local/redis/bin/redis-server(укажите путь к исполняемому файлу)
Просмотр контроля процессов и услуг
[root@localhost утилиты]# netstat -anpt | grep redis
tcp 0 0 127.0.0.1:6379 0.0.0.0:* СЛУШАТЬ 5360/redis-сервер 1
[root@localhost утилиты]# /etc/init.d/redis_6379 остановить(редис закрыт)
[root@localhost утилиты]# /etc/init.d/redis_6379 запуск(на)
[root@localhost утилиты]# /etc/init.d/redis_6379 статус (состояние)
Изменение параметров конфигурации
[root@localhost ~]#vim /etc/redis/6379.conf
привязка 127.0.0.1 192.168.10.101//Прослушиваем адрес хоста
порт 6379 //порт
демонизировать да //Включаем процесс демона
pid-файл /var/run/redis_6379.pid //Указываем PID-файл
уведомление на уровне журнала//уровень журнала
файл журнала /var/log/redis_6379.log//Указываем файл журнала
[root@localhost~]#/etc/init.d/redis_6379 перезапустить
2.командный инструмент redis
[root@localhost утилиты]# redis-cli(Локальный вход)
[root@localhost утилиты]# redis-cli -h 192.168.10.101 -p 6379(удаленный вход)
192.168.10.101:6379> пинг(Служба обнаружения работает нормально)
ПОНГ
3: инструмент тестирования redis-benchmark
redis-benchmark — это официальный инструмент тестирования производительности Redis, который позволяет эффективно проверять производительность сервисов Redis.
(1) Производительность тестового запроса
[root@localhost ~]#redis-benchmark -h 192.168.10.101 -p 6379 -c 100 -n 100000
Примечание:
-h: указать имя хоста сервера;
-p: указать порт сервера;
-c: указать количество одновременных подключений;
-n: указать количество запросов;
(2) Проверка производительности доступа
[root@localhost ~]#redis-benchmark -h 192.168.10.101 -p 6379 -q -d 100
Примечание:
-h: указать имя хоста сервера;
-p: указать порт сервера;
-d: указать размер данных значения SET/GET в байтах;
-q: принудительно выйти из Redis. Отображаются только значения запроса/сек;
set сохраняет формат команды данных, устанавливает значение ключа
получить формат команды получения данных получить ключ
1. Добавьте пары ключ-значение
127.0.0.1:6379> набор 1 1
ХОРОШО
127.0.0.1:6379> набор 2 2
ХОРОШО
127.0.0.1:6379> набор 3 3
ХОРОШО
2. Посмотреть все значения в базе данных
127.0.0.1:6379> ключи *
1) "3"
2) "1"
3) "2"
3. Просмотрите данные, начинающиеся с v, в базе данных.
127.0.0.1:6379>КЛЮЧИ v*
4. Просмотрите в базе данных любые данные, начинающиеся с буквы v.
127.0.0.1:6379>КЛЮЧИ v?
5.Просмотрите текущую базу данных с помощью в началоСледующее содержит любые две цифры данных
127.0.0.1:6379>КЛЮЧИ v??
Определите, существует ли значение.
127.0.0.1:6379>существует f5Определить, существует ли f5
(целое число) 1 Результат равен 1, что указывает на наличие клавиши f5.
нравиться
(целое число) 0 Результат — 0, что указывает на то, что клавиша f5 не существует.
дель Команда может удалить указанный ключ
127.0.0.1:6379> дель v5 Удалить v5 в базе данных
(целое число) 1
127.0.0.1:6379>получить v5
(ноль)
использовать тип Команду можно получить ключ соответствующий ценить тип значения
127.0.0.1:6379>тип к1
нить
Примечание:
Типы данных, поддерживаемые Redis
переименовать Команда предназначена для существующего ключ переименовывать
В реальных условиях рекомендуется использовать существует Команда для просмотра цели ключ существует, а затем решить, выполнять ли переименовать команда, чтобы избежать перезаписи важных данных.
127.0.0.1:6379>переименовать v22 v2 Переименуйте v22 в v2
ХОРОШО
переименовать Функция команды заключается в изменении существующего ключ Выполните переименование и проверьте, существует ли новое имя.
использоватьпереименовать При переименовании команды, если цель ключ Если он существует, он не будет переименован.
размер_базы_данных Цель команды — просмотр текущей базы данных ключ Количество.
127.0.0.1:6379> размер_базы_данных
(целое число) 5
Редис Включено по умолчанию без каких-либо изменений 16 база данных, имя базы данных — это число 0-15 быть названным по порядку
(1)Переключиться на серийный номер 10 база данных
127.0.0.1:6379>выберите 10
ХОРОШО
(2)Переключиться на серийный номер 15 база данных
127.0.0.1:6379[10]>выберите 15
ХОРОШО
(3)Переключиться на серийный номер 0 база данных
127.0.0.1:6379[15]>выбрать 0
127.0.0.1:6379>набор к1 100 Создать k1 в базе данных 0
ХОРОШО
127.0.0.1:6379>получить k1
"100"
127.0.0.1:6379>ход k1 1 //Перемещаем k1 из базы данных 0 в базу данных 1
(целое число) 1
127.0.0.1:6379>выберите 1 //Переключаемся на целевую базу данных 1
ХОРОШО
127.0.0.1:6379[1]>получить k1 //Просмотр перемещенных данных
"100"
127.0.0.1:6379[1]> выбрать 0
ХОРОШО
127.0.0.1:6379> получить k1 //Значение k1 невозможно просмотреть в базе данных 0
(ноль)
Чтобы очистить текущие данные базы данных, используйте FLUSHDB
Реализация команды; очистить все данные базы данных, использовать ФЛАШОЛЛ Реализация команды.
Редис Все данные хранятся в памяти, а затем время от времени асинхронно сохраняются на диск.(Это называется“Полупостоянный режим”); Вы также можете записать каждое изменение данных в файл. добавить только файл(aof)в(Это называется“Полный режим сохранения”)。
потому что Редис Все данные хранятся в памяти. Если постоянство не настроено,Редис После перезагрузки все данные теряются.Поэтому необходимо включитьРедис Функция сохранения сохраняет данные на диск. Редис После перезагрузки данные можно восстановить с диска.Редис Для обеспечения устойчивости предусмотрены два метода: один РБД(RedisБаза Данных) Настойчивость (принцип состоит в том, чтобы РидыВременной дамп записей базы данных в памяти (свалка)на диск РБД настойчивость), другой АОФ(только добавить файл)Настойчивость (принцип состоит в том, чтобы Риды Журнал работы записывается в файл в виде приложения).
Разница между RDB и AOF
ROB записывает снимок данных на диск в течение указанного интервала времени. Это подпроцесс fork. Сначала он записывает данные во временную папку. После успеха он заменит предыдущий файл и сохранит его с двоичным сжатием.
AOF записывает каждую операцию записи и удаления сервера в форме журнала. Операции запроса не будут записываться, но будут записываться в текстовом виде.
Преимущества и недостатки RDB и AOF
Преимущества РДБ:
RDB — это компактный сжатый двоичный файл, представляющий собой снимок данных Redis на определенный момент времени. Он очень подходит для резервного копирования, полного копирования и других сценариев. Например, выполняйте резервное копирование bgsave каждые 6 часов и копируйте файл RDB на удаленный компьютер или в файловую систему для аварийного восстановления.
Восстановление данных происходит быстро.
Максимальная производительность
Высокая эффективность запуска
РБДнедостаток:
Данные, которые не были сохранены до выключения, будут потеряны.
RDB завершается через дочерний процесс разветвления, потребляющий ресурсы.
Преимущества АОФ:
Долговечность данных высокая
В режиме добавления содержимое файла журнала не будет уничтожено даже в случае простоя.
Механизм перезаписи может быть запущен для защиты безопасности данных.
Недостатки АОФ:
Скорость восстановления данных AOF низкая
Эффективность работы АОФ низкая
Критерии выбора между двумя:
Пожертвуйте некоторой производительностью в обмен на более высокую согласованность кэша (АОФ),
Если операции записи выполняются часто, не включайте резервное копирование в обмен на повышение производительности и ждите операций вручную. сохранять когда, сделай резервную копию еще раз(РБД)
Примечание:
Если Redies необходимо загрузить файл персистентности после перезапуска,приоритетФайлы AOF будут выбраны.
Если сначала включен RDB, а затем включен AOF и сначала сохраняется RDB, содержимое файла RDB будет перезаписано AOF.
[root@localhost ~]# vim /etc/redis/6379.conf
Открыть 6379.conf После файла выполните поиск сохранять, вы можете увидеть информацию о конфигурации, как показано ниже.
существовать Редис В файле конфигурации есть три метода синхронизации:
всегда: синхронное сохранение, каждый раз при изменении данных они немедленно записываются на диск ##702 строка
Everysec: рекомендуется по умолчанию, асинхронная запись каждую секунду (значение по умолчанию).
нет: нет синхронизации, решение о том, как синхронизироваться, остается на усмотрение операционной системы.
Игнорировать последнюю потенциально проблемную инструкцию.
[root@localhost ~]#/etc/init.d/redis_6379 перезапуск
192.168.9.236:7001> информационная память
использованная_память:1210776 Размер используемой памяти, в байтах
использованная_память_человека:1.15MОтображается в единицах измерения, в М.
used_memory_rss:7802880Сколько памяти занимает redis с точки зрения операционной системы?
used_memory_rss_human:7.44MДисплей с единицами
макспамять:1073741824Максимальный объем памяти
maxmemory_human:1.00G Дисплей с единицами
maxmemory-политика: Стратегия переработки
летучий-lru: Это позволяет Редис Выберите наименее использованный из всего набора данных. ключ Удалить
volatile-ttl:Устранить по сроку действия ключа
изменчиво-случайный: Случайный выбор данных для исключения из коллекции данных с установленным сроком годности;
allkeys-lru:использовать ЛРУ Алгоритмы исключают данные из всех наборов данных;
всеключи-случайно: Случайный выбор данных для исключения из сбора данных;
нетвыселение: отключить удаление данных (значение по умолчанию).
Установите срок действия ключа
127.0.0.1:6379>истекает v1 10 v1 имеет срок действия 10 секунд.
Примечание:
когда Редис Необходимо восстановить один из-за нехватки памяти ключ час,Редис Первое, что необходимо учитывать, — это не перерабатывать самые старые данные, а те, которые использовались реже всего. ключ или срок действия истекает ключ Выберите один случайным образом из ключ, удалено из набора данных