Spec-Zone.ru › MySQL Connectors 1.0

2.1 Пример подключения к базе данных

Код, необходимый для подключения к хранилищу документов MySQL, очень похож на традиционный код подключения к MySQL, но теперь приложения могут устанавливать логические сессии к экземплярам сервера MySQL, работающим с плагином X. Сессии создаются фабрикой mysqlx, и возвращённые сессии могут инкапсулировать доступ к одному или нескольким экземплярам сервера MySQL, работающим с плагином X. Приложения, использующие объекты Session по умолчанию, могут быть развернуты как на настройках с одним сервером, так и на кластерах баз данных без изменений кода.

Создайте сессию X DevAPI, используя метод mysqlx.getSession(connection). Вы передаёте параметры подключения к серверу MySQL, такие как хост и пользователя, очень похоже на код в одном из классических API. Параметры подключения могут быть указаны как строка типа URI, например user:@localhost:33060, или как словарь данных, например {user: myuser, password: mypassword, host: example.com, port: 33060}. Дополнительную информацию см.

Пользовательская учётная запись MySQL, используемая для подключения, должна использовать плагин аутентификации mysql_native_password или caching_sha2_password, см. . Сервер, к которому вы подключаетесь, должен иметь включённые зашифрованные подключения, что является значением по умолчанию в MySQL 8.0 и более поздних версиях. Это гарантирует, что клиент использует механизм паролей X Protocol PLAIN, который работает с учётными записями пользователей, использующими любой из этих плагинов аутентификации. Если вы пытаетесь подключиться к экземпляру сервера, у которого не включены зашифрованные подключения, для учётных записей пользователей, использующих плагин аутентификации mysql_native_password, сначала используется MYSQL41, а для учётных записей пользователей, использующих caching_sha2_password, происходит откат к SHA256_MEMORY.

Следующий пример кода демонстрирует, как подключиться к серверу MySQL и получить документ из коллекции my_collection, у которого поле name начинается с L. Пример предполагает, что существует схема, названная test, и существует коллекция my_collection. Для того, чтобы пример работал, замените user своим именем пользователя и password своим паролем. Если вы подключаетесь к другому хосту или через другой порт, измените хост с localhost на ваш хост и порт с 33060 на ваш порт.

var mysqlx = require('mysqlx');

// Connect to server on localhost
var mySession = mysqlx.getSession( {
                host: 'localhost', port: 33060,
                user: 'user', password: 'password' } );

var myDb = mySession.getSchema('test');

// Use the collection 'my_collection'
var myColl = myDb.getCollection('my_collection');

// Specify which document to find with Collection.find() and
// fetch it from the database with .execute()
var myDocs = myColl.find('name like :param').limit(1).
        bind('param', 'L%').execute();

// Print document
print(myDocs.fetchOne());

mySession.close();

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/x-devapi-userguide-shell-js-en/database-connection-example.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API