Изначально я создал пользователя mongodb через mongoshell вот так:-
Код: Выделить всё
db.createUser({user: "test_mongodbu", pwd: "test_password", roles: [{ role: "dbOwner", db: "test_mongodb"}]})
Код: Выделить всё
MONGODB_CONNECTION=mongodb
MONGODB_HOST=localhost
MONGODB_PORT=27017
MONGODB_DATABASE=test_mongodb
MONGODB_USERNAME=test_mongodbu
MONGODB_PASSWORD=test_password
MONGODB_MASTER_DATABASE=test_mongodb
Код: Выделить всё
use MongoDB\Client as MongoClient;
$newDatabaseName = 'little_buds';
$connectionString = 'mongodb://' . env('MONGODB_USERNAME') . ':' . env('MONGODB_PASSWORD') . '@' . env('MONGODB_HOST') . ':' . env('MONGODB_PORT') . '/?authSource=' . env('MONGODB_DATABASE');
$client = new MongoClient($connectionString); // Connect to MongoDB server
$database = $client->$newDatabaseName; // Dynamically create a database
$database->$collectionName->insertOne(array('key' => 'value')); // Insert a document into a collection
Код: Выделить всё
Not authorized on little_roses to execute command { insert: "test", ordered: true, $db: "little_buds", lsid: { id: UUID("d9ca3d5f-4299-4545-a487-7c565bc59ed4") } }
Подробнее здесь: https://stackoverflow.com/questions/786 ... -using-php