'redis' => [
'client' => 'predis',
'default' => [
'host' => env('REDIS_HOST', 'redis'),
'password' => env('REDIS_PASSWORD', 'secret'),
'port' => env('REDIS_PORT', 6379),
'database' => 0,
],
'session' => [
'host' => env('REDIS_HOST', 'redis'),
'password' => env('REDIS_PASSWORD', 'secret'),
'port' => env('REDIS_PORT', 6379),
'database' => 1,
],
Может ли кто-нибудь объяснить параметр базы данных в файле config / database.php, я ничего не знаю об этом параметре, поскольку он не указан в документации.
Согласно другому веб-сайту, чтобы настроить сеанс для использования драйвера Redis, необходимо добавить еще одну базу данных Redis, и для этого параметра установлено значение 1, но он указывает на тот же экземпляр Redis. Я в полном замешательстве.
Спасибо
Основываясь на более глубоком изучении документов Redis, я пришел к выводу. Пожалуйста, поправьте меня, если я ошибаюсь.
Параметр базы данных указывает, что поместить в какую базу данных redis. Согласно документации, Redis по умолчанию имеет 16 баз данных.
CONFIG GET databases
1) "databases"
2) "16"
И, помещая базу данных параметров, мы указываем, какую базу данных использовать, например, помещаем все ключи сеанса в базу данных 1 вместо базы данных 0, к которой мы можем получить доступ, используя
SELECT db_number E.g SELECT 1
Пожалуйста, дайте мне знать, верен я или нет. Спасибо =)






Как вы сказали, экземпляр Redis имеет несколько баз данных. Параметр database сообщает Redis, какую базу данных использовать внутри экземпляра. Экземпляр определяется в "host".
Вам не нужно выбирать базу данных на уровне кода с помощью «select», поскольку вы объявили базу данных в config.
Если вы опустите параметр «база данных», то будет использоваться база данных по умолчанию «0».
Если вы хотите использовать несколько баз данных (например, кешировать в одну базу данных, сеансы в другую), вам необходимо создать несколько подключений в вашей конфигурации.