Читаем Основы программирования в Linux полностью

Параметры port_number и unix_socket_name должны быть равны 0 и NULL соответственно, если вы не меняли стандартных настроек в вашей установке MySQL. Эти параметры примут соответствующие значения по умолчанию.

И наконец, параметр flags позволяет с помощью операции OR объединить несколько определений битовых масок, изменяя тем самым определенные характеристики применяемого протокола. Ни один из этих флагов не важен в данной вводной главе; все они подробно описаны в руководстве.

Если подключиться невозможно, возвращается NULL. В этом случае полезную информацию может предоставить подпрограмма mysql_error.

Когда вы прекращаете использовать подключение, обычно при завершении программы, вызовите подпрограмму mysql_close, как показано далее:

void mysql_close(MYSQL * connection);

Эта подпрограмма разорвет соединение с сервером. Если подключение устанавливалось с помощью mysql_init, память, отведенная под структуру дескриптора, освободится. Указатель станет неопределенным, и его нельзя будет применять в дальнейшем. Открытое ненужное подключение означает расточительное использование ресурсов, но повторное открытие подключения сопряжено с дополнительными накладными расходами, поэтому решайте сами, когда применять описанные подпрограммы.

Подпрограмма mysql_options (которую можно вызвать только между вызовами mysql_init и mysql_real_connect) позволит настроить некоторые параметры.

int mysql_options(MYSQL* connection, enum option_to_set, const char *argument);

Поскольку при каждом вызове mysql_options способна настроить только один параметр, ее следует вызывать отдельно для каждого параметра, который нужно задать. Вы можете применять эту подпрограмму необходимое количество раз, но все вызовы должны находиться между вызовами подпрограмм mysql_init и mysql_real_connect. Не все параметры подпрограммы имеют тип char, который следует приводить как const char*. Три самых часто используемых параметра приведены в табл. 8.11. И как всегда в расширенном интерактивном руководстве приведен полный список параметров.


Таблица 8.11

Enum-параметрДействительный тип аргументаОписание
MYSQL_ОРТ_CONNECT_TIMEOUTconst unsigned int*Количество секунд ожидания перед закрытием подключения из-за простоя
MYSQL_ОРТ_COMPRESSНет, используйте NULLПрименять сжатие при сетевом подключении
MYSQL_INIT_COMMANDconst char*Команда, отправляемая при каждом установлении подключения

Успешный вызов возвращает ноль. Поскольку эта подпрограмма предназначена для установки флагов, аварийное завершение всегда означает использование неверного параметра.

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

unsigned int timeout = 7;

...

connection = mysql_init(NULL);

ret = mysql_options(connection, MYSQL_OPT_CONNECT_TIMEOUT, (const char *)&timeout);

if (ret) {

 /* Обработка ошибки */

 ...

}

connection = mysql_real_connect(connection ...)

Теперь, когда вы научились устанавливать, и закрывать ваше подключение, попробуем с помощью короткой программы проверить полученные знания на практике.

Начните с задания нового пароля для пользователя (в приведенном далее коде rick на localhost) и затем создайте базу данных foo, к которой будете подключаться. Вы все это уже знаете, поэтому мы просто приводим последовательность действий:

$ mysql -u root -р

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

mysql> GRANT ALL ON *.* TO rick@localhost IDENTIFIED BY 'secret';

Query OK, 0 rows affected (0.01 sec)

mysql> \q

Bye

$ mysql -u rick -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

mysql> CREATE DATABASE foo;

Query OK, 1 row affected (0.01 sec)

mysql> \q

Перейти на страницу:

Похожие книги

Сетевые средства Linux
Сетевые средства Linux

В этой книге описаны принципы действия и область применения многих серверов, выполняющихся в системе Linux. Здесь рассматриваются DHCP-сервер, серверы Samba и NFS, серверы печати, NTP-сервер, средства удаленной регистрации и система X Window. He забыты и средства, традиционно используемые для обеспечения работы Internet-служб: серверы DNS, SMTP, HTTP и FTP. Большое внимание уделено вопросам безопасности сети. В данной книге нашли отражения также средства удаленного администрирования — инструменты Linuxconf, Webmin и SWAT.Данная книга несомненно окажется полезной как начинающим, так и опытным системным администраторам.Отзывы о книге Сетевые средства LinuxПоявилась прекрасная книга по Linux, осталось воспользоваться ею. Не упустите свой шанс.Александр Стенцин, Help Net Security. Если вы стремитесь в полной мере использовать сетевые возможности Linux — эта книга для вас. Я настоятельно рекомендую прочитать ее.Майкл Дж. Джордан, Linux OnlineВыхода подобной книги давно ожидали читатели. Менее чем на 700 страницах автор смог изложить суть самых различных вопросов, связанных с работой Linux. Автор является высококвалифицированным специалистом в своей области и щедро делится своими знаниями с читателями.Роджер Бертон, West, DiverseBooks.com

Родерик В. Смит

ОС и Сети / Книги по IT
Сетевые средства Linux
Сетевые средства Linux

В этой книге описаны принципы действия и область применения многих серверов, выполняющихся в системе Linux. Здесь рассматриваются DHCP-сервер, серверы Samba и NFS, серверы печати, NTP-сервер, средства удаленной регистрации и система X Window. He забыты и средства, традиционно используемые для обеспечения работы Internet-служб: серверы DNS, SMTP, HTTP и FTP. Большое внимание уделено вопросам безопасности сети. В данной книге нашли отражения также средства удаленного администрирования — инструменты Linuxconf, Webmin и SWAT.Данная книга несомненно окажется полезной как начинающим, так и опытным системным администраторам.Отзывы о книге Сетевые средства LinuxПоявилась прекрасная книга по Linux, осталось воспользоваться ею. Не упустите свой шанс.Александр Стенцин, Help Net Security. Если вы стремитесь в полной мере использовать сетевые возможности Linux — эта книга для вас. Я настоятельно рекомендую прочитать ее.Майкл Дж. Джордан, Linux OnlineВыхода подобной книги давно ожидали читатели. Менее чем на 700 страницах автор смог изложить суть самых различных вопросов, связанных с работой Linux. Автор является высококвалифицированным специалистом в своей области и щедро делится своими знаниями с читателями.Роджер Бертон, West, DiverseBooks.com

Родерик В. Смит

ОС и Сети, интернет / ОС и Сети / Книги по IT
Полное руководство по Microsoft Windows XP
Полное руководство по Microsoft Windows XP

В книге известного американского автора описывается среда ОС Windows XP и принципы ее функционирования, приведен сравнительный анализ Windows XP с предшествующими версиями операционной системы Windows. Рассматриваются вопросы применения и модификации нового интерфейса с целью получения прямого доступа ко всем функциям Windows XP обсуждаются варианты подключения к компьютерным сетям. Несколько разделов посвящены работе с реестром и конфигурационными файлами, мультимедийным функциям и разнообразным системным службам, а также методам решения проблем с программным обеспечением и оборудованием. Особое внимание уделено обеспечению безопасности операционной системы.Издание адресовано пользователям и сетевым администраторам, желающим активно применять возможности операционной системы Windows XP (в том числе и недокументированные).

Питер Нортон , Джон Поль Мюллер

ОС и Сети / Книги по IT