Категория: Windows
MySQL - это быстрый, многопоточный, многопользовательский и устойчивый сервер SQL базы данных. Он предназначен как для ответственных сильнозагруженных производственных систем, так и для встраивания в массовое программное обеспечение.
Для установки MySQL запустите следующую команду из терминала:
Начиная с Ubuntu 12.04, MySQL 5.5 устанавливается по умолчанию. Несмотря на 100% совместимость с MySQL 5.1, при необходимости установить версию 5.1 (например в качестве зависимой базы к другим MySQL 5.1 серверам), вы можете заменить устанавливаемый пакет на mysql-server-5.1.
В процессе установки у вас запросят пароль для пользователя root под MySQL.
Как только установка завершится, сервер MySQL запустится автоматически. Вы можете использовать следующую команду в терминале для проверки, что сервер MySQL запущен:
Когда вы запустите эту команду, ввы сможете увидеть что-то похожее на следующую строку:
Если сервер не работает, вы можете набрать следующую команду для его запуска:
Вы можете отредактировать файл /etc/mysql/my.cnf для настройки основных параметров - файл журнала, номер порта и пр. Например, чтобы настроить MySQL на ожидание подключений от компьютеров в сети, измените параметр bind-address на IP адрес сервера:
Замените 192.168.0.5 на реальное значение адреса вашего сервера.
После изменений в /etc/mysql/my.cnf сервис MySQL нужно перезагрузить:
Если вам потребовалось сменить пароль пользователя root в MySQL, введите в терминале:
Сервис MySQL будет остановлен и вас попросят ввести новый пароль.
Хотя конфигурация по умолчанию для MySQL, предоставляемая пакетами Ubuntu, имеет великолепную функциональность и работает достаточно хорошо, есть некоторые вещи, которые вы можете решить до того как продолжить.
MySQL разработан так, что позволяет хранить данные по-разному. Эти варианты относятся к драйверам (управляющим модулям - engines) как баз данных, так и хранилищ. Существует два основных драйвера, которые вам могут быть интересны: InnoDB и MyISAM. Драйверы хранилищ прозрачны (незаметны) конечным пользователям. MySQL управляет событиями по-разному на нижнем уровне, но независимо от того, какая система хранения данных используется, вы будете взаимодействовать с базой одним и тем же способом.
Каждый драйвер имеет свои преимущества и недостатки.
Хотя смешивание и связывание драйверов баз данных на уровне таблиц разрешается и может быть привлекательным, это снижает эффективность настройки производительности, которую вы смогли бы провести при разделении ресурсов между двумя системами вместо замешивания их в одно целое.
MyISAM более старая из двух. Она может быть быстрее InnoDB при определенных обстоятельствах и предпочтительна при рабочей нагрузке, ориентированной на чтение данных. Некоторые интернет приложения настроены на использование именно MyISAM (однако это не означает, что они будут медленнее под InnoDB). MyISAM также поддерживает тип данных FULLTEXT. который позволяет осуществлять очень быстрый поиск по большому количеству текстовых данных. Однако MyISAM поддерживает блокировку записи только на уровне таблиц. Это означает, что только один процесс может изменять данные в таблице в один момент времени. Поскольку некоторые приложения, использующие таблицу, могут масштабироваться (работать несколькими экземплярами - scales), это может стать серьезной помехой. Здесь также отсутствует журналирование, что может усложнить восстановление данных после сбоя. Следующая ссылка предоставляет некоторые соображения по использованию MyISAM в работающей базе данных.
InnoDB - более современный драйвер, созданный по принципам ACID. что гарантирует надежную обработку транзакций базы данных. Блокировка записи производится на уровне одной записи в таблице. Это означает возможность нескольких изменений в одной таблице одновременно. Кэширование данных происходит также и в оперативной памяти внутри драйвера базы данных, позволяя кэшировать более эффективно чем на уровне блоков файлов. В соответствии с ACID все транзакции журналируются независимо от основных таблиц. Это позволяет намного более надежно восстанавливать данные при проверке целостности данных.
Начиная MySQL 5.5 InnoDB является драйвером по умолчанию и настоятельно рекомендуется вместо MyISAM. если только у вас нет специфических потребностей, уникальных для этого драйвера.
Существует ряд параметров, которые могут быть указаны в файле настроек MySQL, что со временем позволит вам повысить производительность вашего сервера. Для начальной настройки вам может пригодиться Percona's my.cnf generating tool. Этот инструмент позволит вам создать файл my.cnf более оптимизированный под специфические возможности вашего сервера и ваши требования.
Не меняйте ваш существующий файл my.cnf на созданный утилитой, если у вас уже загружены данные в вашу базу данных. Некоторые изменения в этом файле могут быть несовместимы, если вы поменяли то, как хранятся данные на диске, после чего вы не сможете запустить MySQL. Если вы все же решили это сделать и у вас есть данные в базе, вам потребуется выполнить mysqldump и загрузить данные повторно:
Эта операция запросит пароль пользователя root перед созданием копии данных. Желательно убедиться, что другие пользователи и процессы не используют базу во время этой операции. В зависимости от количества данных в вашей базе, это может занять длительное время. Вы не увидите ничего на экране во время этого процесса.
Как только файл выгрузки создан, остановите MySQL:
Теперь сохраните оригинальный файл my.cnf и замените его на новый:
Затем удалите и создайте заново пространство базы данных, а также убедитесь в корректности его владельца перед запуском MySQL:
Теперь все, что осталось - это импортировать ваши данные. Чтобы дать нам представление как идет процесс импорта, полезно использовать утилиту 'Pipe Viewer' (pv). Далее показано как установить и использовать pv для этого случая, но если вы не хотите ее использовать, просто замените pv на cat в соответствующей команде. Не обращайте внимание на время ETA (расчетное время окончания), генерируемое pv, поскольку оно основывается на среднем времени обработки каждой записи при сохранении в файл, однако скорость может сильно меняться от записи к записи при использовании mysqldumps.
Когда все завершится, это будет означать что все получилось!
Эта операция не обязательна для всех изменений my.cnf. Многие значения, которые вы захотите поменять для улучшения производительности сработают даже на работающем сервере. Но как всегда не забудьте сделать надежную копию файлов настроек и данных перед внесением изменений.
MySQL Tuner - это полезный инструмент, который подсоединяется к работающему MySQL и предлагает варианты как можно улучшить настройки для вашей рабочей нагрузки. Чем дольше работает сервер, тем лучше рекомендации предоставит mysqltuner. Для рабочего окружения подождите как минимум 24 часа прежде чем запускать утилиту. Вы можете установить mysqltuner из хранилища Ubuntu:
После установки запустите ее:
и ждите ее финального отчета. Верхняя секция предоставляет общую информацию а сервере баз данных, а нижняя часть содержит рекомендации по настройке, необходимые для изменения вашего my.cnf. Многие из них могут быть поправлены вживую на сервере без перезагрузки. Смотрите официальную документацию MySQL (указанную в разделе Ссылки ) для перечня параметров, изменяемых "налету". Далее часть примерного отчета по работающей базе, который показывает, что можно извлечь некоторую пользу от увеличения размера кэша запросов:
Один финальный комментарий по настройке базы данных . Хотя мы можем утверждать что определенные настройки самые лучшие, производительность может изменяться от приложения к приложению. Например, что работает великолепно для Wordpress, может оказаться не лучшим для Drupal, Joomla или проприетарных приложений. Производительность зависит от типов запросов, использования индексов, насколько эффективно спроектирована база данных и т.д. Вы можете посчитать полезным потратить некоторое время на поиск настроек базы данных под используемые вами приложения. Как только вы пройдете определенную точку, любые ваши изменения будут приводить к минимальным улучшениям и вам будет лучше либо заняться улучшением ваших приложений, либо масштабировать вашу базу данных, используя более производительное оборудование или добавляя зависимые сервера.
Смотрите домашнюю страницу MySQL для дополнительной информации.
Полная документация доступна в форматах как онлайн, так и оффлайн по ссылке MySQL Developers portal.
Оригинал: Introduction to sql using mysql
Автор: Paul Cobbaut
Дата публикации: 24 мая 2015 г.
Перевод: A.Панин
Дата перевода: 11 июля 2015 г.
MySQL является сервером базы данных, который использует структурированный язык запросов ( Structured Query Language. SQL ). На начальном этапе разработка MySQL осуществлялась силами сотрудников шведской компании MySQL AB. Первая стабильная версия продукта была выпущена в 1995 году. В 2008 году компания MySQL AB была приобретена компанией Sun Microsystems (на сегодняшний день являющейся собственностью компании Oracle).
Сервер базы данных MySQL снискал наибольшую популярность в области разработки веб-сайтов, где он чаще всего используется в комбинации с интерпретатором сценариев PHP и веб-сервером Apache (в аббревиатуре LAMP MySQL обозначается с помощью буквы M ), но, несмотря на это, MySQL также используется и в организациях, работающих с базами данных большого объема, таких, как Facebook, Flickr, Google, Nokia, Wikipedia и Youtube.
Прочитав данную главу, вы научитесь работать со структурированным языком запросов ( SQL ) в процессе взаимодействия с локальным сервером базы данных MySQL. заключающегося в создании и использовании небольших баз данных, таблиц, запросов и простых триггеров.
3.1. Установка компонентов MySQL
В дистрибутиве Debian/Ubuntu вы можете использовать команду aptitude install mysql-server для установки сервера базы данных и клиентской утилиты MySQL.
В процессе установки вам будет предоставлена возможность ввода пароля для пользователя root базы данных MySQL. который необходимо запомнить (в процессе обучения вы можете использовать пароль hunter2. как делаю я).
Для проверки версии установленного пакета программного обеспечения в дистрибутиве Debian/Ubuntu следует использовать команду dpkg -i. В примере ниже показан вывод данной команды в случае установки пакета программного обеспечения с компонентами MySQL версии 5.5.
Для получения аналогичной информации о версии пакета программного обеспечения с компонентами MySQL в дистрибутиве Red Hat/Fedora/CentOS следует использовать команду rpm -q.
Для работы с триггерами вам понадобится версия пакета программного обеспечения с компонентами MySQL не ниже 5.0.
3.2. Получение доступа к серверу MySQL3.2.1. Учетные записи пользователей Linux-системы
При установке компонентов MySQL осуществляется автоматическое создание учетной записи пользователя, информация о которой записывается в файл /etc/passwd. и группы пользователей, информация о которой записывается в файл /etc/group.
После запуска демон сервера базы данных MySQL с именем mysqld использует права доступа, установленные для упомянутых учетной записи пользователя и группы пользователей.
3.2.2. Клиентское приложение mysql
Теперь вы можете начать работу с сервером базы данных MySQL из командной строки, просто введя команду mysql -u root -p. после чего вас попросят ввести пароль (от учетной записи пользователя root сервера базы данных MySQL ). В примере ниже показана команда exit. введенная пользователем для выхода из консоли MySQL.
Кроме того, вы можете передавать пароль в формате открытого текста в командной строке, но такой подход не является безопасным. В этом случае любой человек, имеющий доступ к файлу с историей команд вашей командной оболочки bash, будет иметь возможность получения пароля для учетной записи пользователя root сервера базы данных MySQL.
3.2.3. Файл конфигурации
Вы можете сохранить параметры доступа к серверу базы данных MySQL в скрытом файле с именем .my.cnf в вашей домашней директории. В примере ниже мы разместили имя учетной записи пользователя root сервера базы данных MySQL и пароль для этой учетной записи в файле .my.cnf.
Благодаря наличию данного файла вы можете использовать учетную запись пользователя root сервера базы данных MySQL сразу же после ввода команды mysql.
3.2.4. Клиентское приложение mysql с интерфейсом командной строки
Вы можете использовать утилиту mysql для изучения структуры баз данных, а также для исполнения SQL-запросов, предназначенных для осуществления манипуляций с данными из этих баз. Методика работы с данной утилитой проиллюстрирована с помощью приведенных ниже примеров.
В данном случае мы исполняем команду show databases. Каждая команда должна завершаться символом разделителя. Стандартным символом разделителя является символ ; (точка с запятой).
Мы будем использовать данную команду в следующих разделах.
3.3. Базы данных MySQL3.3.1. Вывод списка всех существующих баз данных
Вы можете использовать утилиту mysql как для ознакомления с списком баз данных, так и для исполнения SQL-запросов с целью осуществления манипуляций с данными из этих баз. В приведенных ниже примерах показано, как следует работать с данной утилитой. В первую очередь мы авторизуемся на уровне нашего сервера базы данных MySQL и выполняем команду show databases для ознакомления со списком баз данных, обслуживаемых в данный момент сервером MySQL.
3.3.2. Создание базы данных
Вы можете создать новую базу данных с помощью команды create database.
3.3.3. Использование базы данных
После создания базы данных мы должны сообщить серверу MySQL о том, что хотим работать с этой базой данных с помощью команды use $имя_базы_данных. В примере ниже показана методика выбора базы данных с именем famouspeople в качестве текущей (рабочей) базы данных.
3.3.4. Управление доступом к базе данных
Для предоставления кому-либо прав доступа к базе данных на уровне сервера MySQL следует использовать команду grant.
3.3.5. Удаление базы данных
Если база данных больше не нужна, вы можете удалить ее навсегда с помощью команды drop database.
3.3.6. Сохранение резервной копии базы данных и восстановление базы данных из нее
Вы можете создать резервную копию базы данных или переместить базу данных на другой компьютер с помощью утилит mysql и mysqldump. В примере ниже мы создаем резервную копию базы данных famouspeople на компьютере с именем laika.
А это пример команды для восстановления базы данных из резервной копии.
0. Zend Server CE Установка под ключ подробно
1. Zend Server CE Установка в Windows
2. Zend Server CE Установка и настройка MySQL Community Server
• Если Вы выставили галочку на закачивания и установку MySQL то папка установки должна находится в той же папке где находится Zend Server CE. Папка установки по умолчанию – C:\Program Files (x86)\ MySQL
• В нашем случае C:\zs\ MySQL
• Если Вы не установили галочку на закачку MySQL. То перейдите на официальный сайт и скачайте новую версию MySQL.
• MySQL Community Server (Текущая общедоступным релиз: 5.5.19)
• Запускаем установку файла в Административном режиме.
• Далее будут показаны те диалоговые окна, в которых необходимо делать какой-либо выбор.
• Нажмите в данном окне выборочную установку компонентов "Custom"
• Здесь вы можете выбрать дополнительные компоненты и сменить каталог установки программы.
• Папка установки по умолчанию. C:\Program Files (x86)\ MySQL\MySQL Server 5.5
• В нашем случае. C:\zs\MySQL\MySQL Server 5.5
• Вы должны сменить физический путь к папке установки.
• Нажимаем кнопку Browse. откроется дополнительное окно.
• Указываем физический путь к папке. C:\zs\MySQL\MySQL Server 5.5
• Программа установки MySQL автоматически создаст папки.
• Нажимаем ОКей.
• Нажимаем Next ,сервер приступит к установке.
• Нажимаем Finish. Если вы, сняли задачу перейти к настройке MySQL сервера, (убрали галочку).
• Процесс настройки можно запустить из папки C:\zs\MySQL\MySQL Server 5.5\bin запустив файл MySQLInstanceConfig.exe
• Папка установки по умолчанию. C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin файл MySQLInstanceConfig.exe
Настройка MySQL сервера.
• При нажатии кнопки Finish. Нас встречает окно приветствия настройки сервера
• Нажимаем на кнопку Next
• Следующим шагом.Выбираем детализированную настройку - "Detailed Configuration".
• Оставляем отмеченным пункт "Developer Machine". Мы ведь разработчики и даже нет сомнений.
• Выбрав пункт "Multifunctional Database", вы сможете работать как с таблицами типа InnoDB (с возможностью использования транзакций), так и с высокоскоростной MyISAM (как правило, для веб-разработок используется именно этот тип таблиц).
• Выбор диска и каталога для хранения таблиц типа InnoDB.
• В данном диалоговом окне выбирается максимально возможное количество подключений к серверу MySQL. При выборе "Decision Support (DSS)/OLAP", максимальное количество подключений будет ограничено двадцатью, чего более чем достаточно при установке сервера на домашнем компьютере и отсутствии большого количества одновременных подключений.
• Отметив "Enable TCP/IP Networking" мы включаем поддержку TCP/IP соединений и выбираем порт, через который они будут осуществляться. Стандартным для сервера MySQL является порт 3306.
• Отметив "Enable Strict Mode", мы задаем режим строгого соответствия стандарту SQL (данный параметр рекомендуется оставлять включенным).
• Добавьте исключение брандмауэра для этого порта. Выставив галочку в окошечке. Add firewall exception for this port.
• Обратите внимание на выставление настроек данного окна. Отметив "Best Support For Multilingualism" и выбрав из ниспадающего списка ( utf8 ) определяем, что изначально для таблиц будет использоваться кодировка ( utf8 ) что означает корректную работу, Лучшая Поддержка Многоязычия, в том числе и русским языком в данной кодировке.
• Данная кодировка общепринятая при смене языка в Magento.
• Если отметить "Install As Windows Service", сервер будет запускаться в виде сервиса, что является рекомендуемым способом запуска.
• Ниже, в ниспадающем списке, задается имя сервиса.
• Далее, поставьте галочку рядом с "Launch the MySQL Server automatically", если вы хотите запускать сервер в ручную, то уберите галочку.
• Так же поставьте галочку рядом с "Include Bin Directory in Windows PATH" - это позволит установить видимость каталога "bin", для командной строки.
• Установите пароль главного пользователя - "root". Советую сделать это. Поставьте хотя бы какой-нибудь простенький пароль, только не оставляйте поле пустым, это убережет вас от возможных неприятностей в дальнейшем.
• Также мы будем вносить пароль в конфигурационный файл config.inc.php в \phpMyAdmin
• Галочку ставить или не ставить, выбор за вами напротив, “Enable root access from remote machines“ это значения позволяет подключения к серверу с удалённого компьютера.
• Нажимаем выполнить Execute.
• Наш сервер запускается, проходит через брандмауэр.
• MySQL сервер, может зависнуть, отмените установку, и по новой пройдите, процесс настройки.
• В данном окне обратите внимание на строку "Write configuration file", которая указывает на месторасположение конфигурационного файла MySQL – (my.ini) далее, необходимо будет отредактировать его.
• Откройте для редактирования файл (my.ini)
Папка установки по умолчанию. C:\Program Files (x86)\MySQL\MySQL Server 5.5\ my.ini
В нашем случае адрес: C:\zs)\ MySQL\MySQL Server 5.5 \my.ini
1) В раздел [client] после строки:
port=3306
Добавьте строку определяющую каталог содержащий файлы описания кодировок:
2) В раздел [mysqld] после строки:
port=3306
Добавьте следующие две строки, первая из которых вам уже известна, вторая – устанавливает
кодировку, в которой данные передаются MySQL:
3) Далее, найдите строку:
• Формат данных InnoDB .
• В отличие от таблиц MyISAM, где для каждой таблицы создается один файл данных, данные InnoDB в настройках по умолчанию хранятся в больших совместно используемых файлах (изменить это можно с помощью настроек опции innodb_file_per_table). что позволяет использовать постраничный кэш страниц базы данных.
• Формат данных InnoDB обеспечивает надежное хранение данных за счет транзакционности и блокировки данных на уровне строки.
• Заменить или оставить, изначально устанавливаемый тип таблиц на MYISAM:
• Решать вам если вы разбираетесь в таблицах. И сможете, подправит ошибку, в дальнейшем, в скоростной передачи данных (транзакционности).
• Я советую оставить INNODB. MySQL не пропустит ошибку и не пропишет в базу данных.
• Конечный результат редактирования (my.ini)
• Удалить базы данных или переустановить
• Вы решили удалить базы данных или переустановить.
• Запускаем из папки, файл MySQLInstanceConfig.exe
• по умолчанию. C:\Program Files (x86)\ MySQL\MySQL Server 5.5\bin
• В нашем случае. C:\zs\MySQL\MySQL Server 5.5\bin
• Удаляем, и проходим настройку, установку баз сервера, занова.
• Дополнение: временной зоны в MySQL
Папка установки по умолчанию. C:\Program Files (x86)\MySQL\MySQL Server 5.5\ my.ini
В нашем случае адрес: C:\zs\MySQL\MySQL Server 5.5 \my.ini
• Глобальное изменение временной зоны в конфигурационном файле my.ini делается строкой:
Относится эта настройка к MySQL серверу, располагается в разделе [mysqld]
• В PHP есть своя настройка часового пояса, если вы установили в файле ( php.ini )
• То данная настройка не требуется в MySQL
• При наличии достаточных привилегий, можно поменять глобальную временную зону запросом:
• Заходим в phpMyAdmin открываем закладку SQL и прописываем.
• Нажимаем Окей Выполнить SQL-запрос(ы) на сервере "localhost":
• Но надо помнить, что после перезагрузки MySQL, данная настройка больше работать не будет.
• Если часовой пояс не установлен, в MySQL то он берется с настроек сервера, поэтому в некоторых случаях достаточно правильно установить часовой пояс на сервере, чтобы уже не беспокоиться за другие программы.
• Установка и настройка сервера MySQL – завершена.
• В следующей теме мы рассмотрим и установим phpMyAdmin в ZendServer
Просьба к участникам форума:
Не писать комментарии. Вроде, Э типа я не понял что, там буковка не та, или можно другим путём идти.
Эта статья создана для начинающих, и в том числе для тех людей, кто хочет пересесть с Жигулей на Мерседес.
Если вы увидели орфографическую ошибку, или решили поправить меня. то пишите мне лично (в личку). Замечания и предложения я приму во внимания.
Если статья на вас произвела, раздражения или разочарования, ставьте минус.
Если статья на вас произвела, радость и вы нашли то, что искали долго, ставьте плюс.
Кроме того, как я понимаю, такой ньюанс в портах FreeBSD - если поставить MariaDB на чистый сервер (/usr/ports/databases/mariadb) и потом начать ставить PHPMyAdmin он захочет расширение php5-mysql - оно не потянет за собой MySQL-сервер? Это также очень важно иначе возможны затруднения с автоматической установкой ПО.
Ничего подобного. Да, phpmyadmin тянет за собой php-mysql, но как проверяется установлен ли mysql сервер? Наличием либы mysqlclient.16. А MariaDB ставит ее. Ну точнее свою либу с данным именем.
===> phpMyAdmin-3.3.9.2 depends on file: /usr/local/lib/php/20060613/mysql.so - not found
===> Verifying install for /usr/local/lib/php/20060613/mysql.so in /usr/ports/databases/php52-mysql
===> Vulnerability check disabled, database not found
===> License check disabled, port has not defined LICENSE
===> Extracting for php52-mysql-5.2.17
=> SHA256 Checksum OK for php-5.2.17.tar.bz2.
===> Patching for php52-mysql-5.2.17
===> php52-mysql-5.2.17 depends on file: /usr/local/bin/phpize - found
===> php52-mysql-5.2.17 depends on file: /usr/local/bin/autoconf-2.68 - found
===> php52-mysql-5.2.17 depends on shared library: mysqlclient.16 - found
===> PHPizing for php52-mysql-5.2.17
Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519
configure.in:3: warning: prefer named diversions
configure.in:3: warning: prefer named diversions
===> Configuring for php52-mysql-5.2.17
И mysql-client подвоха не заметил.
В итоге:
# pkg_version | grep mysql && pkg_version | grep mari
mysql-client =
php52-mysql =
qt4-mysql-plugin =
mariadb =
Везде где нужно поддержка mysql сохранена, но работает все с mariadb
Стоит один раз попробовать что бы влюбиться. в ISP.
На все мои сообщения, действует конфигурация сервера: ISP Pro (всегда актуальная current версия), FreeBSD 8.0, php as fcgi, nginx+apache.
Установку СУБД MySQL в данной статье мы будет производить из коллекции портов FreeBSD. Предполагается, что на сервере установлена свежая версия коллекции портов. Если это не так, следует установить или обновить порты приложений с помощью утилиты portsnap.
Далее нужно будет в /etc/make.conf указать некоторые опции сборки mysql55-server.
Заходим в порт mysql55-server, приступаем к установке. После установки перечитываем директории PATH с помощью rehash.
Сервер СУБД MySQL 5.5 установлен. Далее необходимо произвести инициализацию директории данных и первоначальную настройку. Инициализируем директорию данных MySQL, владельцем назначим непривилегированного пользователя «mysql».
Отлично, системные и вспомогательные таблицы созданы. Далее нужно создать конфигурационный файл mysql. Шаблоны конфигов mysql можно найти в /usr/local/share/mysql/:
Общий объём используемой оперативной памяти для MySQL подсчитывается по формуле (основные параметры):
В этой формуле не хватает ряда других параметров, использующих память, в контексте данной статьи будем использовать эту формулу. Если требуется подсчитать более точное максимальное количество памяти, которое может использовать mysql, можно воспользоваться следующей формулой (ниже). Как показывает практика, полученное значение памяти из следующей более сложной формулы не стоит воспринимать «как будет», значение обычно получается меньше.
На стенд-сервере, куда мы устанавливаем MySQL имеется 16GB оперативной памяти. Будут использоваться таблицы MyISAM и InnoDB. Скопируем пример конфигурационного файла my-innodb-heavy-4G.cnf как /var/db/mysql/my.cnf.
После чего приводим его к следующему виду.
После первоначальной настройки СУБД MySQL мы должны запустить сервер и настроить запуск mysqld при старте системы. Управлять состоянием mysqld можно через rc-скрипт, который автоматически после сборки порта записался как /usr/local/etc/rc.d/mysqld-server. Запускаем СУБД.
Проверим, что mysql действительно запустился и работает от пользователя mysql.
Всё верно. Далее - установим пароль пользователя root (по-дефолту пароль пустой), после чего обновим таблицу привилегий mysql.
Заключительным шагом - запустим утилиту безопасности mysql_secure_installation, с помощью которой удалим анонимного пользователя, тестовую базу данных, которые создаются по-умолчанию при инициализации директории данных и запретим удалённый вход для пользователя root (не системный пользователь).
На этом установка и первоначальная настройка СУБД MySQL закончена. Успехов в использовании и оптимизации!
mysql/ustanovka_mysql_5.5_pod_freebsd.txt · Последние изменения: 2015/02/01 13:50 — Администратор
Артём Мастер (1388), закрыт 8 лет назад
Там много-много чего написано на английском, а т. к. я английский плохо знаю, и вдруг что-нибудь натворю не то, то вот решил обратиться к вам уважаемые "знатоки", собравшимся вот на этом проекте.
Мне нужна пошаговая инструкция установки этой программы.
Аналитик Профи (849) 8 лет назад
1. Устанавливаем Web-сервер Apache
Первым делом запускаем apache_1.3.31-win32-x86-no_src.exe, на что следует обратить внимание:
По умолчанию предлагается установить Apache как службу, рекомендуется так и оставить, для Windows серверов тем более.
Здесь же можете прописать
Network Domain – Ваш домен, например demo.ru
Server Name – Имя сервера, например cs.demo.ru
E-mal – На ваше усмотрение
Идем далее, по завершению установки открываем браузер и набираем
[ссылка заблокирована по решению администрации проекта]
Если видим cтестовую страницу Apache, значит всё прошло успешно.
Заходим в службы, находим там Apache и останавливаем службу.
Создаём директорию C:www на диске C
Переходим в директорию в C:Program FilesApache GroupApacheconf
Там находятся конфигурационные файлы Apache
Открываем файл httpd.conf в любом текстовом редакторе
В конце файла находим строчку
Где 192.168.3.22 – адрес Вашей машины в сети
В самый конец файла добавляем
ServerAdmin webmaster@demo.ru
DocumentRoot c:/www
ServerName cs.demo.ru
ErrorLog logs/cs.demo.ru-error_log
CustomLog logs/cs.demo.ru-access_log common
В директорию C:www выкладываем файл index.html с любым текстом, например Hello World!
Запускаем службу Apache, открываем браузер и набираем
http://192.168.3.22
Вы должны увидеть Hello World! если Вы это видите значит всё сделано верно.
Важно! При любом изменении конфигов необходимо перезапустить Apache
Распаковываем содержимое архива mysql-4.0.20d-win.zip в любую временную директорию
и запускаем SETUP.EXE.
По умолчанию MySQL устанавливается в C:mysql, там его и оставим.
Ставим типичную установку.
По завершению запускаем C:mysqlbinwinmysqladmin.exe
Вводим
User name:
root
Password:
123
Пароль потом поменяем и ОК.
В нижнем правом углу должен появиться светофор и загореться зелёным - это монитор сервера MySQL,
а также инструмент управления запуском и остановкой.
Теперь ставим phpMyAdmin для управления сервером MySQL.
Распаковываем содержимое архива phpMyAdmin-2.5.7.zip в C:www
У Вас должна появиться директория phpMyAdmin-2.5.7, переименовываем её в myadmin (для удобства)
Открываем в текстовом редакторе файл C:wwwmyadminconfig.inc.php,
в блокноте не получится, так как кодировка у него Unix, я использую EditPlus для этих целей.
Находим строчки
Если запущены сервера Apache и MySQL открываем браузер и набираем
http://192.168.3.22/myadmin/
Вводим root без пароля и Вы должны увидеть следующее
Ваш конфигурационный файл содержит настройки (пользователь root без пароля). которые относятся к привилегированному пользователю MySQL (по умолчанию). Ваш MySQL сервер запущен с этими настройками по умолчанию, открытый для вторжений, поэтому Вам настоятельно рекомендуется устранить эту дыру в безопасности.
На этом пока с phpMyAdmin закончим.
Если вас с root без пароля не пускает введите парoль 123
phpMyAdmin нужен для управления базами данных, пользователями, привелегиями и тд
Источник: интернет сайт
Александра Мазаева Профи (870) 8 лет назад
next-->next---> next---->Finish Мне помогает :))Я ставила и всё работало.
Super Light Просветленный (23313) 8 лет назад
куда ставить то?
Какая ОС?
Если винда - никой инструкции - все по умолчанию в инсталяторе.
Serg Fed Мастер (1039) 8 лет назад
Эта статья последний раз отредактировна JSN Вс 15 сен, 2013 9:12 am
Опишу установку MySQL 5.5 на FreeBSD 9.1. Для себя, чтобы не забыть. Может еще кому пригодится.
В конце всех манипуляций мы получим MySQL сервер# cd /usr/ports/databases/mysql55-server/
# make install clean
# rehash
Настраиваем запуск MySQL при старте системы:
# echo 'mysql_enable="YES"' >> /etc/rc.conf
2. Производим первоначальную инициализацию БД
# cd /usr/local
# ./bin/mysql_install_db --datadir=/var/db/mysql --user=mysql
3. Создаём файл настроек /var/db/mysql/my.cnf.
[client]
character_set_client=utf8
#password = your_password
port = 3306
socket = /tmp/mysql.sock
[mysqld]
skip-networking
character-set-server=utf8
init-connect="SET NAMES utf8"
long_query_time=5
slow_query_log=1
slow_query_log_file=/var/db/mysql/slow.log
#port = 3306
socket = /tmp/mysql.sock
skip-external-locking
key_buffer_size = 16M
query_cache_size=64M
max_allowed_packet = 128M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
innodb_flush_log_at_trx_commit=2
skip-innodb_doublewrite
server-id = 1
# binlog if need
#expire_logs_days = 10
#max_binlog_size = 512M
#log-bin=mysql-bin
#binlog_format=mixed
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
Устанавливаем права на каталог с БД:
# chown -R mysql:mysql /var/db/mysql
Пришло время описать установку и настройку mysql сервера версии 5.5 с кодировками utf-8 по умолчанию.
Добавляем такие строки в /etc/make.conf
DEFAULT_MYSQL_VER=55Теперь можно приступать к установке:
#cd /usr/ports/databases/mysql55-server && make install clean
После установки создаём файл /etc/my.cnf такого содержания:
[mysqld]
#bind-address = 127.0.0.1
socket= /tmp/mysql.sock
skip-networking
character-set-server=utf8
collation-server=utf8_general_ci
init_connect='SET collation_connection = utf8_general_ci'
init-connect='SET NAMES utf8'
log_error=/var/log/mysql/error.log
slow_query_log=1
slow_query_log_file=/var/log/mysql/slow.log
long_query_time = 5
log-queries-not-using-indexes
default-storage-engine = innodb
innodb_file_per_table
innodb_file_format=barracuda
local-infile=0
[client]
default-character-set = utf8
#chown -R mysql:mysql /var/db/mysql/
Если в логах получаем ошибку
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
Проверьте, стоит ли владелец mysql:mysql. Если стоит, а всё равно не запускается, удалите каталог /var/db/mysql/mysql (скорее всего он пуст) и запустите снова:
Что бы проверить, правильно ли у нас установлена кодировка, выполним такую команду:
mysql>show variables like 'char%';
Если вывод будет таким:
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.38 sec)
mysql> show variables like '%collation%';
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.01 sec)
Значит всё правильно.
Либо тоже самое, но через mysqladmin :
#mysqladmin variables | egrep 'collation|char'
| character_set_client | utf8
| character_set_connection | utf8
| character_set_database | utf8
| character_set_filesystem | binary
| character_set_results | utf8
| character_set_server | utf8
| character_set_system | utf8
| character_sets_dir | /usr/local/share/mysql/charsets/
| collation_connection | utf8_general_ci
| collation_database | utf8_general_ci
| collation_server | utf8_general_ci
А полный список поддерживаемых кодировок можно узнать по команде:
mysql>SHOW CHARACTER SET;
5) Просмотр и смена кодировки уже существующей базы
Попробуем изменить кодировку на koi8-r
mysql> alter database `AAA` character set koi8r ;
Query OK, 1 row affected (0.00 sec)
mysql> show variables like "%colla%";
+----------------------+------------------+
| Variable_name | Value |
+----------------------+------------------+
| collation_connection | utf8_general_ci |
| collation_database | koi8r_general_ci |
| collation_server | utf8_general_ci |
+----------------------+------------------+
3 rows in set (0.01 sec)
Собственно видим, что кодировка изменилась.
5) Пару слов о кодировках.
Допустим такую ситуацию. Вы используете PhpMyAdmin с кодировкой UTF8. а консоль у вас KOI8R. Естественно, хочется, что бы всё нормально отображалось и в консоли и в вебке. Для этого служит команда:
mysql>SET NAMES KOI8R;
которая объясняет серверу, в какой кодировке выводить данные. Естественно, каждый раз вводить это неудобно и для этого можно поместить в my.cnf :
[mysqld]
init-connect='SET NAMES koi8r'
НО! Если вы обладаете правами SUPER (например, root ), то для вас это не сработает. Придётся вручную каждый раз вводить. Читал, что это сделано специально.
Навигация по записям [mysql] Установка сервера mysql 5.5. 4 комментарияУ меня на 5.5.13 это уже не работает.
MySQL собирается с помощью CMake, поэтому нужно немного править Makefile
Например где-то после строк
if defined(WITH_FASTMTX)
CMAKE_ARGS+= -DWITH_FAST_MUTEXES=1
.endif
Можно вставить такое для выбора настроек сервера по умолчанию.
CMAKE_ARGS+= -DDEFAULT_CHARSET=»utf8″
CMAKE_ARGS+= -DDEFAULT_COLLATION=»utf8_general_ci»
CMAKE_ARGS+= -DEXTRA_CHARSETS=»all»
Если будет время попробую сделать и предложить маинтейнеру патч для порта, чтобы было похоже на то как было раньше.
Спасибо! Очень нужная статья — подробно все указано.
Спасибо.
Но для нас, для ламеров, нужно бы дописать
#chown -R mysql:mysql /var/log/mysql/
иначе счастья не видать…
Если прописываешь в my.cnf то мускуль можно и не пересобирать. А вот за статью спасибо — если бы не каммент Богдана еще бы долго искал, как мускуль по-правильному собрать.
if $<.CURDIR:N*/usr/ports/databases/mysql55-server> == «»
CMAKE_ARGS+= -DDEFAULT_CHARSET=utf8
CMAKE_ARGS+= -DDEFAULT_COLLATION=utf8_general_ci
.endif
В итоге вот такое:
show variables like ‘char%’;
+—————————+———————————-+
| Variable_name | Value |
+—————————+———————————-+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/share/mysql/charsets/ |
+—————————+———————————-+
8 rows in set (0.01 sec)
З.Ы. клиента бесполезно пересобирать — он кодировку и так берет из окружения.
З.Ы. перевести базу в другую кодировку можно очень просто через phpmyadmin. Открываешь базу, отмечаешь все таблицы, нажимаешь сверху «Опции» и выбираешь нужную кодировку для collation. И все.
Добавить комментарий Отменить ответ