Spec-Zone .ru
спецификации, руководства, описания, API

21.8.7.49. mysql_options()

int mysql_options(MYSQL *mysql, enum mysql_option option, const void *arg)

Описание

Может использоваться, чтобы установить дополнительный, соединяют опции и влияют на поведение для соединения. Эта функция может быть вызвана многократно, чтобы установить несколько опций.

Вызвать mysql_options() после mysql_init() и прежде mysql_connect() или mysql_real_connect().

option параметром является опция, которую Вы хотите установить; arg параметром является значение для опции. Если опция является целым числом, определите указатель на значение целого числа как arg параметр.

Следующий список описывает возможные варианты, их эффект, и как arg используется для каждой опции. Несколько из опций применяются только, когда приложение соединяется против libmysqld встроенная библиотека сервера и неиспользована для приложений, соединенных против libmysqlclient клиентская библиотека. Для описаний опции, которые указывают arg неиспользовано, его значение не важно; это является стандартным, чтобы передать 0.

client группа всегда читается, если Вы используете MYSQL_READ_DEFAULT_FILE или MYSQL_READ_DEFAULT_GROUP.

Указанная группа в файле опции может содержать следующие опции.

Опция Описание
character-sets-dir=path Каталог, где наборы символов устанавливаются.
compress Используйте сжатый клиент-серверный протокол.
connect-timeout=seconds Соедините тайм-аут в секундах. На Linux этот тайм-аут также используется для того, чтобы ожидать первого ответа от сервера.
database=db_name Соединитесь с этой базой данных, если никакая база данных не была определена в соединить команде.
debug Опции отладки.
default-character-set=charset_name Набор символов значения по умолчанию, чтобы использовать.
disable-local-infile Отключите использование LOAD DATA LOCAL.
enable-cleartext-plugin Включите mysql_clear_password плагин аутентификации открытого текста.
host=host_name Имя хоста значения по умолчанию.
init-command=stmt Оператор, чтобы выполниться, соединяясь с сервером MySQL. Автоматически повторно выполняемый, если пересоединение происходит.
interactive-timeout=seconds То же самое как определение CLIENT_INTERACTIVE к mysql_real_connect(). См. Раздел 21.8.7.53,"mysql_real_connect()".
local-infile[={0|1}] Если никакой параметр или ненулевой параметр, включите использованию LOAD DATA LOCAL; иначе отключите.
max_allowed_packet=bytes Максимальный размер пакета, который клиент может считать из сервера.
multi-queries, multi-results Включите многократным наборам результатов от выполнения многократного оператора или хранимых процедур.
multi-statements Позвольте клиенту отправить многократные операторы в единственной строке (разделенный";").
password=password Пароль значения по умолчанию.
pipe Используйте именованные каналы, чтобы соединиться с сервером MySQL на Windows.
port=port_num Номер порта значения по умолчанию.
protocol={TCP|SOCKET|PIPE|MEMORY} Протокол, чтобы использовать, соединяясь с сервером.
return-found-rows Сказать mysql_info() возвратиться найденный строками вместо обновленных строк при использованииUPDATE.
shared-memory-base-name=name Имя разделяемой памяти, чтобы использовать, чтобы соединиться с сервером.
socket=path Файл сокета значения по умолчанию.
ssl-ca=file_name Файл Центра сертификации.
ssl-capath=path Каталог Certificate Authority.
ssl-cert=file_name Файл сертификата.
ssl-cipher=cipher_list Допустимые шифры SSL.
ssl-key=file_name Файл ключей.
timeout=seconds Как connect-timeout.
user Пользователь значения по умолчанию.

timeout был заменен connect-timeout, но timeout все еще поддерживается в MySQL 5.7 для обратной совместимости.

Для получения дополнительной информации о файлах опции, см. Раздел 4.2.3.3, "Используя Файлы Опции".

Возвращаемые значения

Нуль для успеха. Ненулевой, если Вы определяете неизвестную опцию.

Пример

Следующий mysql_options() вызовы запрашивают использование сжатия в клиент-серверном протоколе, заставляют опции быть считанными из [odbc] группа файлов опции, и отключает режим автоматической фиксации транзакции:

MYSQL mysql;mysql_init(&mysql);mysql_options(&mysql,MYSQL_OPT_COMPRESS,0);mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"odbc");mysql_options(&mysql,MYSQL_INIT_COMMAND,"SET autocommit=0");if (!mysql_real_connect(&mysql,"host","user","passwd","database",0,NULL,0)){    fprintf(stderr, "Failed to connect to database: Error: %s\n",          mysql_error(&mysql));}

Этот код запрашивает, чтобы клиент использовал сжатый клиент-серверный протокол и считал дополнительные опции из odbc раздел в my.cnf файл.