Подключение к Mysql-серверу

Автор работы: Пользователь скрыл имя, 08 Января 2012 в 20:26, реферат

Описание

Сравнение версий Ubuntu 10.04 и 11
Была выбрана версия именно 10.04. Она более удобна пользователю по интерфейсу, больше напоминает Windows. 11-я же версия очень сильно поменялась внешне, что на мой взгляд сделало систему очень неудобной для обычного пользователя.

Работа состоит из  1 файл

Язык программирования сетевых приложений.docx

— 435.31 Кб (Скачать документ)

Министерство  Образования Российской Федерации 
Государственный университет аэрокосмического приборостроения 
 

Отчет защищен:  
Преподаватель Балберин В.В.
 
 
 

ОТЧЕТ 
по выполненной работе

по курсу: Языки программирования сетевых приложений

Подключение к Mysql-серверу 
 
 
 

Работу  выполнил Ляпунов И.С.
студент  группы 4640М:  
 
 
 
 
 
 
 
 

Санкт - Петербург

2011 

Почему  выбрана система  Ubuntu 10.04 

Сравнение версий Ubuntu 10.04 и 11 

Была выбрана версия именно 10.04. Она более удобна пользователю по интерфейсу, больше напоминает Windows. 11-я же версия очень сильно поменялась внешне, что на мой взгляд сделало систему очень неудобной для обычного пользователя.

Сравним эти системы Ubuntu 10.04 и Windows 7

 
Windows 7 против UbuntuLinux. Готов ли Linux полностью вытеснить операционные системы семейства Windows с настольных компьютеров?

 
Установка 

Windows 7 
Установка происходит в автоматическом режиме, есть возможность работать с разделами 
Ubuntu 10.04 
Установка в автоматическом режиме, работа с разделами, совмещение с другими ОС, можно загрузить как LiveCD и сначала попробовать, как работает ОС, а потом установить 
Старт

Windows 7 
36 с.

Ubuntu 10.04

14 с. (на моём компьютере)

Безопасность

Windows 7 
Без антивируса – никуда 
Ubuntu 10.04 
Антивирус не нужен, политика ОС не позволяет запускаться опасным программам без вашего разрешения

Устройства

Windows 7 
Поддерживает стандартные устройства, для остальных нужно искать драйверы 
Ubuntu 10.04 
Поддерживает больше стандартных устройств, включая большинство веб-камер, Bluetooth-адаптеров, для остальных устройств ОС сама найдёт драйверы и установит их, если для устройства имеются Linux-драйверы

Установка программ

Windows 7 
Ищите программы, устанавливайте и удаляйте через панель управления. Инсталляторы большие, установка долгая. Обновление каждая программа выполняет сама, отчего часто висят 3-5 процессов, которые запускают обновления 
Ubuntu 10.04 
Почти любые программы можно найти в центре приложений, не открывая браузера. Всё ПО хранится в больших интернет-хранилищах (репозиториях), которые можно находить в Сети и подключать, хотя и главный репозиторий содержит программы всех категорий. Инсталляторы маленькие, установка-обновление-удаление выполняет ОС. В случае недостатка какого-то компонента, ОС автоматически устанавливает его

Работа  с Интернетом

Windows 7 
Стандартный браузер не работает со многими сайтами, почта и чат отсутствуют 
Ubuntu 10.04 
Сразу после установки вы можете выходить в Сеть через FireFox, работать с почтой (наподобие Outlook), и переписываться в 19 популярных чатах, включая ICQ, Jabber и Facebook. 
Работа с документами

Windows 7 
Есть блокнот и WordPad, работать с офисными документами можно после установки MicrosoftOffice 
Ubuntu 10.04 
Есть Gedit – аналог блокнота, но с подсветкой синтаксиса, сразу можно работать с офисными документами через OpenOffice

Мультимедиа

Windows 7 
Возможно почти всё 
Ubuntu 10.04 
"Из коробки" - поддержка основных форматов. 
Цена 
Windows 7 
Платная. 
Ubuntu 10.04 
Бесплатна. И все программы, входящие в состав бесплатны и свободны. А плюс это или минус – кому как.

Выбор СУБД. 

Почему  выбрали MySQL?

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

 

Актуальность

База данных выполняют роль единого хранилища, откуда могут брать данные другие пользователи или туда их класть. Выступает в роли единого центра информации. Почему именно база данных? Потому что это основной способ хранения информации, дает возможность быстрого поиска информации и ее централизованного обновления. Единое место хранения позволяет упростить процесс защиты БД от ненужного доступа.

Собственно почти  на каждом предприятии есть своя корпоративная  сеть.  Для чего нужен DHCP сервер? Для автоматической выдачи сетевых настроек. Это

     IP адрес, маска подсети, DNS сервер, шлюз. Если сеть состоит за 5-10 компьютеров все эти настройки можно прописать вручную, а если из 100 и более, тот тут проще поставить DHSP для автоматизации этого процесса. Для чего нужен DNS? Для сопоставления IP адреса и Имение компьютера, для чего это нужно? Чтобы не запоминать IP адреса компьютеров и сервисов. Куда проще обращаться к компьютеру по имени, чем помнить его IP-адрес .

Настройка DHCP-сервер на Ubuntu.

DHCP (англ. DynamicHostConfigurationProtocol   протокол динамической конфигурации узла)   это сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. Данный протокол работает по модели “клиент-сервер”. Для автоматической конфигурации компьютер-клиент на этапе конфигурации сетевого устройства обращается к т.н. серверу DHCP, и получает от него нужные параметры.

 
Для того чтобы Ubuntu выполнял роль DHCP-сервера надо поставить всего один пакет dhcp3-server, ставиться он одной командой

sudoapt-getinstall dhcp3-server

После того как  пакет будет установлен, DHCP-сервер будет работать как демон(т.е. запускаться при старте системы), остановить, перезапустить или запустить его можно командой.

sudo/etc/init.d/dhcp3-server stop/restart/start

Настройка DHCP-сервера  осуществляется через конфигурационный файл /etc/dhcp3/dhcpd.conf

Для того чтобы  настроить раздачу сетевых параметров dhcpd.conf должен содержать следующий  конфиг

 

subnet10.0.2.0 netmask 255.255.255.0 {        

      range10.0.2.3010.0.2.100; # Диапазон ip адресов

allow unknown-clients;

}

Вся истории аренды ip адресов пишется в файл /var/lib/dhcp3/dhcpd.leases 
 

Настройка DNS 

Настройка bind9. 

 
  Классическим ДНС сервером для unix систем является BIND (BerkleyInternetNameDomain) или сокращенно named.  
named уже есть в штатной установке FreeBSD, но можно и переустановить.

 
root@localhost# cd /usr/ports/dns/bind9 && make install

Установка из пакета:

 
root@localhost# pkg_add -r bind9

Особенностью  полной сборки является утилита rndc, управляющая демоном named. А посему пришлось сгенерировать пару ключей для rndc и правильно их прописать. Поскольку named - это штатный демон для FreeBSD, то его конфиг находится в /etc/namedb (а не в /usr/local/etc/named, как обычно), а если еще точнее, то в /var/named/etc/namedb.  
 
Итак запускаем rndc-confgen:

 
root@localhost# rndc-confgen  
                                                                                     
# Start of rndc.conf  
key "rndc-key" {  
        algorithm hmac-md5;  
        secret "zDfVVNmsufD3PYiGeXNlmw==";  
};  
 
options {  
        default-key "rndc-key";  
        default-server 127.0.0.1;  
        default-port 953;  
};  
# End of rndc.conf  
 
# Use with the following in named.conf,  
# adjusting the allow list as needed:  
# key "rndc-key" {  
#       algorithm hmac-md5;  
#       secret "zDfVVNmsufD3PYiGeXNlmw==";  
# };  
#  
# controls {  
#       inet 127.0.0.1 port 953  
#       allow { 127.0.0.1; } keys { "rndc-key"; };  
# };  
# End of named.conf 

 

Отсюда видно,что именно и в какой файл мы должны вписать, так и поступаю- делюCopy/Paste в указанные файлы. Толькораскомментировав ('#') то, что указано для named.conf.  
    Cамое время вписать в /etc/rc.conf строку:

named_enable="YES"
 

   После чего  лучше перегрузить компьютер,  но если перезагружать очень  не хочется, то можно запустить  его командой /usr/sbin/named -t /var/named -u bind. Если на команду rndcreload сервер реагирует адекватно, значит все в порядке.  
 
     ДНС может использоваться следующими способами:  
1. Кеширующий ДНС  
2. Мастер ДНС - главный держатель зоны  
3. Подчиненный ДНС - умеет скачивать доверенную зону, хранить у себя и обслуживать ДНС запросы на эту зону. 
 
 
  
Итак наш named.conf:

 
#Это вносится  от rndc-confgen  
key "rndc-key" {  
algorithm hmac-md5;  
secret "zDfVVNmsufD3PYiGeXNlmw==";  
};  
 
controls {  
inet 127.0.0.1 port 953  
allow { 127.0.0.1; } keys { "rndc-key"; };  
};  
 
# В trusted вносим сервера вторичные, провайдерские, те которые могут скачивать зоны,  
# то есть доверенные узлы. Остальным лишняя информация не нужна.  
acl "trusted"    
   {  
    192.168.0.0/24;  
    127.0.0.1;  
    195.196.197.198;  
    195.196.197.199;  
    195.94.224.129;  
   };  
 
# Описываем общие опции для всех зон:  
options  
    {  
    directory "/etc/namedb";  
    pid-file "/var/run/named/pid";  
    dump-file "/var/dump/named_dump.db";  
    statistics-file "/var/stats/named.stats";  
    allow-transfer { trusted; };              # имеют права скачивать зону  
    allow-query { any; };                     # имеют право отпралять запрос  
    allow-recursion { any; };                 # позволять рекурсивные запросы  
    listen-on{ any; };                       # слушать ip со всех нтерфейсов,  
    query-sourceaddress * port 53;  
    auth-nxdomainyes;  
    version "WinDNS 1.01";                      
    };  
 
# как будут записываться логи  
logging {  
    categorylame-servers { null; };  
    categorydefault { default_syslog;};  
channeldefault_log {  
        file "/var/log/dns.log";  
        severitynotice;  
        print-timeyes;  
        print-categoryyes;  
        print-severityyes;  
                     };  
 
    categoryqueries{ default_log;};  
    categoryxfer-in { default_log; };  
    categoryxfer-out { default_log; };  
    categorysecurity { default_log; };  
    categoryresolver { default_log; };  
    categoryclient { default_log; };  
    categoryunmatched { default_log; };  
    categorydefault { default_log; };  
    categorydatabase { default_log; };  
 
};  
 
# Для кеширующего ДНС-а нужна такая запись:  
zone "."  {  
    typehint;  
    file "named.root"; # обычно этот файл присутсвует в комплекте bind  
    };  
 
# Зона локалхоста  
zone "localhost" {  
    typemaster;  
    file "localhost.zone";  
    };  
 
# описываем обратную зону для локалхоста  
# для этого достаточно запустить скрипт sh /etc/namedb/make-localhost  
zone "0.0.127.IN-ADDR.ARPA" {  
    typemaster;  
    file "localhost.rev";  
    notifyno;  
    }; 

Здесь представлено описание доверительной зоны.

Файл /etc/named/localhost.zone

$ttl 1D  
@       IN      SOA  dommain.ru. admin.domain.ru. (  
2007110201 ;serial  
108000 ;refresh  
1800 ;retry  
1209600 ;expiry  
604800)  
    IN  NS      @     

IN  A       127.0.0.1 

Пояснения:  
 
1 Строка: "$TTL 1D"  - Time To Live 1 Day. Именно со строчки TTL должен начинаться файл зоны. В противном случае named его не прочитает  
 
2 строка: "@" (собачка :) - означает описанную зону в named.conf, в нашем случае localhost, IN  - без комментариев, SOA (startofautherity кажется) ответсвенный сервер, dommain.ru. - наш домен (обязательно с точкой), admin.domain.ru. - наше мыло (ибо собачка используется как имя зоны). Во второй строке обязательно должна присутсвовать SOA-запись .  
 
3 строка: серийный номер для обновления. Если в зону вносятся любые изменения номер должен быть увеличен. Обычно, номер делают как ГГГГ-ММ-ДД 01-99. Благодря, такой нехитрой формуле можно гарантировать возрастающую уникальность серийного номера зоны.  
 
4 строка: обновляться каждые 30 часов  
 
5 строка: повтроять через полчаса  
 
6 строка: истечение срока 1209600 сек = 2 недели  
 
8 запись типа: "    IN NS   @" - сокращенная, полная выглядит так:  
localhost.               IN    NS      @    или  
@                            IN    NS      @    что в сущности одно и то же из named.conf  
Этой строкой мы объясняем кто будет мастер-сервером ДНС (выражение IN NS) для этой зоны. Как оказывается он сам и будет.  
 
9 запись типа "    IN  A       127.0.0.1" тоже сокращенная, полный вариант описан чуть выше. Этой строкой мы объясняем на какой ip-адрес мы присваиваем имя localhost.  
 
Итак, после такого конфига у нас должен быть работающий кеширующий DNS-сервер. Пробуем:

 
root@localhost# rndc reload  
server reload successful  
root@localhost# echo "nameserver\t127.0.0.1" > /etc/resolv.conf  
root@localhost# host mail.ru  
mail.ru has address 194.67.57.126  
mail.ru has address 194.67.57.226  
mail.ru has address 194.67.57.26  
mail.ru mail is handled by 10 mxs.mail.ru. 

 
В ответ на команду "host" приходит ответ, значит наш DNS на 127.0.0.1 работает. Вообщем, кеширующий ДНС мы запустили.  
 
Теперь самое время прописать какую-нибудь зону. Например ounix.ru - домен второго уровня, полностью принадлежит нам. Тогда в /etc/namedb/named.conf вписываем:

zone "ounix.ru" {  
    type master;  
    file "ounix.ru";  
    allow-transfer { trusted;};  
        }; 

Информация о работе Подключение к Mysql-серверу