|
|
www.lissyara.su
—> статьи
—> FreeBSD
—> программы
—> MySQL
Установка MySQL
Автор: lissyara.
Опять статья навеянная многочислеными просьбами трудящихся :) Заодно не придётся во всех новых статьях описывать установку MySQL :) Так что, в любом случае пригодится. Вообще, с MySQL вроде всё просто, но почему-то народ активно морозится баз данных, используя системных юзеров в почте, да всякие файлы текстовые, под почту да хранение трафика. Хотя с БД оно всё на порядок удобней получается.
Итак, рассматривать будем установку и небольшую настройку двух версий MySQL - 5.0 и 3.23 под FreeBSD6.0. Почему именно они? На данный момент, 5.1 вроде всё ещё бета, потому используется на рабочих серверах только отъявленными маньяками, или теми у кого есть необходимость. А вот 3.23 нужна в случаях, когда на какой-нить старенькой машинке нужна "записная книжка" для почтовых юзеров, да БД куда складывать статистику по траффику инета, например. Подымать для этого 5.0 или 4.1 - расточительство оперативки и ресурсов слабенькой машинки. У меня и на некоторых, очень хороших машинах, стоит 3.23 - ибо его хватает.
Итак, ставим 5.0
/usr/home/lissyara/>cd /usr/ports/databases/mysql50-server/
/usr/ports/databases/mysql50-server/>make
===> Vulnerability check disabled, database not found
You may use the following build options:
WITH_CHARSET=charset Define the primary built-in charset (latin1).
WITH_XCHARSET=list Define other built-in charsets (may be 'all').
WITH_COLLATION=collate Define default collation (latin1_swedish_ci).
WITH_OPENSSL=yes Enable secure connections.
WITH_LINUXTHREADS=yes Use the linuxthreads pthread library.
WITH_PROC_SCOPE_PTH=yes Use process scope threads
(try it if you use libpthread).
BUILD_OPTIMIZED=yes Enable compiler optimizations
(use it if you need speed).
BUILD_STATIC=yes Build a static version of mysqld.
(use it if you need even more speed).
WITHOUT_INNODB=yes Disable support for InnoDB table handler.
WITH_ARCHIVE=yes Enable support for Archive Storage Engine.
WITH_FEDERATED=yes Enable support for Federated Storage Engine.
WITH_NDB=yes Enable support for NDB Cluster.
===> Extracting for mysql-server-5.0.22
^C
/usr/ports/databases/mysql50-server/>
| Прервал. Доступна куча опций, потому с ними и поиграемся, для чего в файл /etc/make.conf надо внести такие строки:
# Для некоторых, особо тупых приложений, лучше указать версию MySQL,
# что используется, тут. Но - для совсем тупых не поможет и это.
DEFAULT_MYSQL_VER=50
# Директория где лежат порты
PORTSDIR?= /usr/ports
# для сервера
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-server
# Дефолтовая кодировка. Вообще, этим пунктом увлекаться не стоит -
# могут возникнуть проблемы при переносе на другой сервер. На самом
# деле и не проблемы вовсе - просто дамп перекодировать да поменять
# кодировку-коллэйшен у таблиц в дампе, перед заливкой, но первый
# раз столкнувшись, вызывает кучу проблем...
WITH_CHARSET=utf8
# Другие вкомпиленные кодировки. Можно задать 'all' - все.
#WITH_XCHARSET=all
# Дефолтовая кодировка сравнения (другого слова подобрать не могу...)
WITH_COLLATION=cp1251_bin
# Поддержка OpenSSL - для шифрования передаваемых данных.
# Шифрование - это конечно хорошо, но - повышается нагрузка на
# машину сервера и на машину клиента (если и тот и другой на одной
# машине - вообще не вижу смысла в этом пункте.)
#WITH_OPENSSL=yes
# Интересная опция - позволяет работать в несколько "нитей",
# обрабатывая несколько запросов одновременно - в результате
# повышается производительность.
WITH_LINUXTHREADS=yes
# Программные треды FreeBSD (если я верно всё понял). Тестов на скорость,
# в сравнении с линуксовыми не нашлось - потому не знаю, кто быстрей.
# Кстати, видел рекомендацию - включать и те и другие треды одновременно.
# Смысла, особого в этом не вижу, но и не утверждаю ничего.
#WITH_PROC_SCOPE_PTH=yes
# Собирать с флагами оптимизации (-O2), сам не мерял, но по слухам,
# несколько процентов производительности можно выиграть. Будет
# полезным на старых машинах, или высоконагруженных.
BUILD_OPTIMIZED=yes
# Собрать статическую версию mysqld (cо вкомпиленными либами, чтоль)
# Также, как и предыдущая опция, позволит выиграть несколько процентов
# производительности (по слухам - до 10% - но чё-то слабо верится...)
BUILD_STATIC=yes
# Отключить тип таблиц InnoDB (если не используете - будет поменьше
# коду, и, соответственно, быстрей работать будет)
WITHOUT_INNODB=yes
# Специальный тип хранения данных (не всех, тока тех, что без индексов),
# позволяет хранить их в виде архива, тем самым экономится дисковое
# пространство (в ущерб производительности, я думаю... Так что смысл
# есть, лишь если надо хранить кучу неиндексированных данных -
# те же данные по траффику, к примеру, там всё равно перебором почти всё :))
#WITH_ARCHIVE=yes
# Фенька, позволяющая работать с удалёнными (находящимися на другом хосте)
# таблицами данных, как будто они находятся на локальной машине
# (NFS, чтоль, уже отменили? :)) Хотя, если выборки будут идти на другом
# хосте - то нагрузка на сеть будет меньшe, чем с NFS. Короче - не пробовал,
# ничё не утверждаю... Пару строк в документации прочёл.)
#WITH_FEDERATED=yes
# Опция, нужная лишь в случае, если будете собирать кластер MySQL-серверов
#WITH_NDB=yes
.endif
# для клиента
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-client
# Многие из опция сервера, применяются и в клиенте. Вобщем-то, какие не
# применяются, интуитивно понятно - то, что касается всяких фенек, типа
# кластеров, архивных таблиц и прочего. Ставить их тут можно, но они не
# произведут никакого действия. Также, хочу заметить, что кодировка,
# 'по-умолчанию' бывает не тока у сервера, но и у клиента. Частенько,
# именно на этом прокалываются. (И вовсе не обязательно она должна быть
# такая же как у сервера.)
# Также хочу заметить, что клиента не надо собирать с какими бы то ни
# было тредами - линуксовыми, или родными - я прокололся на линуксовых,
# вроде всё пашет, с консоли, а вот апач падает... Методом исключения
# выяснил виновника - клиент с тредами - падает mysql-модуль PHP,
# валит апача...
WITH_CHARSET=cp1251
WITH_COLLATION=cp1251_bin
BUILD_OPTIMIZED=yes
.endif
| Итак, собираем MySQL:
/usr/home/lissyara/>cd /usr/ports/databases/mysql50-server/
/usr/ports/databases/mysql50-server/>make && make install && make clean
| После инсталляции клиента сборка прекращается с ошибкой - не может найти библиотеку.
===> Installing ldconfig configuration file
===> Compressing manual pages for mysql-client-5.0.22
===> Registering installation for mysql-client-5.0.22
===> Returning to build of mysql-server-5.0.22
Error: shared library "mysqlclient.15" does not exist
*** Error code 1
Stop in /usr/ports/databases/mysql50-server.
/usr/ports/databases/mysql50-server/>
| Я перезагрузился, помогло, но можно и иначе, дать команду:
/usr/home/lissyara/>/sbin/ldconfig -m /usr/local/lib/mysql
/usr/home/lissyara/>
| Должно помочь и без перезагрузки. Вообще, раньше, вместе с клиентом, инсталлся такой скрипт:
/usr/local/etc/rc.d/000.mysql-client.sh
#!/bin/sh
case "$1" in
start)
/sbin/ldconfig -m /usr/local/lib/mysql
;;
stop)
;;
*)
echo ""
echo "Usage: `basename $0` { start | stop }"
echo ""
exit 64
;;
esac
| Нынче он не инсталлится. Если ошибки будут продолжаться, при сборке других приложений из портов, то можно его добавить в автозагрузку, или, что грамотней, добавить путь в /etc/rc.conf (подробности можно найти здесь, поиск в странице, по ключевому слову ldconfig_paths).
После чего продолжаем инсталляцию:
/usr/ports/databases/mysql50-server/>make install && make clean
| По окончании инсталляции, стругаем конфиг для mysql - /usr/local/etc/my.cnf
# Этот конфигурационный файл сделан на основе файла для маленьких
# систем - /usr/local/share/mysql/my-small.cnf. Большую часть его
# делал не я, а один знакомый. Имени, к сожалению, не помню...
# Но всё же предупреждаю - копирайт на настройки конфига не мой :))
#
# Вообще, конфигурационный файл можно положить в несколько мест:
# /etc/my.cnf
# /var/db/mysql/my.cnf
# /usr/local/etc/my.cnf
# В любом из них mysqld его найдёт, и достанет из него настройки.
# Самое корректное место, если судить по стартовому скрипту, это
# директория где лежат базы данных - /var/db/mysql/my.cnf.
# Опции для всех клиентов MySQL
[client]
# Пароль для подключения к БД
#password = your_password
# Порт на котором висит MySQL
port = 3306
# Сокет MySQL
socket = /tmp/mysql.sock
# Опции MySQL-сервера
[mysqld]
# Порт
port = 3306
# Адрес, который будем слушать (если вам не нужно подключаться к
# MySQL с других машин, то оставьте здесь 127.0.0.1)
bind-address = 127.0.0.1
# Где лежит сокет
socket = /tmp/mysql.sock
# Не использовать средства системных блокировок.
skip-locking
# Вообще, в новых версиях, (после 3.21) этот пункт правильно называется
# key_buffer_size, но можно использовать и старое имя. Значение этого
# пункта - размер буфера, используемого для блоков индексов. Чтобы
# улучшить обработку индексов (для всех операций чтения и записи нескольких
# элементов), необходимо увеличить это значение настолько, насколько возможно.
# Рекомендуется, 1/4 от объёма оперативки, но не более 1/2 - иначе система
# может начать сохранять временные файлы на диске, что значительно
# снизит производительность.
key_buffer = 16K
# Максимальный размер одного пакета. Изначально размер буфера сообщений
# устанавливается в net_buffer_length байтов, но при необходимости может
# возрасти до max_allowed_packet байтов. Это значение по умолчанию не
# настолько велико, чтобы отсеивать большие (возможно ошибочные) пакеты.
# Если используются большие столбцы BLOB, его необходимо увеличить.
# Значение должно быть не меньше самого большого BLOB, который будет
# использоваться. Ограничение протокола для max_allowed_packet
# составляет 16 Мб в MySQL 3.23 и 1Гб в MySQL 4.0.
max_allowed_packet = 1M
# Количество открытых таблиц для всех потоков. С увеличением этого
# значения увеличивается количество дескрипторов файлов, необходимых
# для mysqld. Чтобы узнать, необходимо ли изменять значение кэша таблиц,
# следует проверить значение переменной Opened_tables.
# Если у этой переменной большое значение, а команда FLUSH TABLES
# (которая закрывает все таблицы, а потом открывает их повторно)
# используется не часто, то необходимо увеличить ее значение.
table_cache = 4
# Каждый поток, которому необходимо произвести сортировку, выделяет
# буфер данного размера. Увеличение данного значения позволит ускорить
# выполнение операторов ORDER BY или GROUP BY.
sort_buffer_size = 64K
# Каждый поток, осуществляющий последовательное сканирование, выделяет
# буфер указанного размера для каждой сканируемой таблицы. Если
# проводится много последовательных сканирований, это значение
# можно увеличить.
read_buffer_size = 256K
# При считывании строк, после проведения сортировки, в отсортированном
# порядке строки считываются через буфер, чтобы избежать операций поиска
# по диску. Это может улучшить выполнение ORDER BY весьма и весьма,
# если параметр установлен в большое значение. Т.к. эта переменная
# имеет отношение к потоку, то не устанавливайте слишком большое
# значение глобально, но просто меняйте его при выполнении некоторых
# больших запросов.
read_rnd_buffer_size = 256K
# В данное значение устанавливается, в промежутках между запросами,
# буфер соединения. Обычно это значение не изменяется, но если у вас
# очень мало памяти, можно установить его по размеру ожидаемого
# запроса (т.е. равным предполагаемой длине операторов SQL, отправляемых
# клиентами; если оператор превысит указанную длину, буфер будет
# автоматически увеличен как максимум до max_allowed_packet байтов).
net_buffer_length = 2K
# Размер стека для каждого потока. От данного значения зависит большое
# количество ограничений, обнаруживаемых при помощи теста crash-me.
# По умолчанию этот размер достаточен для нормальной работы.
thread_stack = 64K
# Вообще не слушать порты TCP/IP. Это может применяться для большей
# безопасности, если все процессы, соединяющиеся с MySQL висят на томже
# хосте, что и mysqld. Все взаимодействия с mysqld будут осуществляться
# через Unix-сокеты, или именованые каналы.
# Заметтьте, что использование этой опции под форточками, без включчения
# именованных каналов (используйте опцию "enable-named-pipe") сделает
# работу MySQL бесполезной - ибо с mysqld никто не сможет соединиться :)
skip-networking
# Если Вы используете InnoDB, то закомментируйте эту опцию
skip-innodb
# С этой опцией MySQL не будет инициализировать библиотеку Berkeley DB,
# что позволит сэкономить большое количество памяти.
skip-bdb
# Hекоторое уникальное число между 2 и 2^32-1. Значения server-id должны
# быть различными на каждом сервере, участвующем в репликации. Если
# значение server-id не определено, оно будет установлено в 1, если
# также не определено значение master-host, оно будет установлено в 2.
# Обратите внимание, что если значение server-id опущено, то головной
# сервер будет отказывать в соединении всем подчиненным серверам, а
# подчиненный сервер - отказывать в соединении головному серверу.
# Таким образом, опускать установку значения server-id можно лишь в
# случае резервного копирования с использованием двоичного журнала.
server-id = 1
# Раскомментируйте эту опцию, для включения логгирования всех запросов
# Заметтьте - тока на время отладки! Потом надо закомментить и
# рестартануть MySQL!
# Файл должен существовать, с соответствующими правами на него:
# touch /var/log/mysql.log
# chown mysql:wheel /var/log/mysql.log
# chmod 640 /var/log/mysql.log
log = /var/log/mysql.log
# Указывает местоположение двоичного журнала обновлений,
# в котором будут вестись записи.
#log-bin=mysql-bin
[mysqldump]
# Если задан этот параметр, то обработчик таблицы при выполнении
# удаления не будет объединять индексы - в некоторых случаях это
# может ускорить данную операцию
quick
# Максимальная величина пакета, посылаемого/принимаемого с сервера
max_allowed_packet = 16M
[mysql]
# Отключает автоматическое рехеширование. rehash следует использовать
# для получения хеша таблиц и полей. Это обеспечивает более
# быстрый старт mysql.
no-auto-rehash
# Опция, которую рекомендуется раскомментить начинающим :)
# Разрешает выполнять только операции UPDATE и DELETE, используя ключи.
#safe-updates
[isamchk]
key_buffer = 8M
sort_buffer_size = 8M
[myisamchk]
key_buffer = 8M
sort_buffer_size = 8M
[mysqlhotcopy]
# Допускать простой длительностью interactive_timeout секунд (вместо
# wait_timeout секунд) перед закрытием данного соединения.
interactive-timeout
# P.S. Большинство текста - это из мануала по MySQL 4.0, за который
# мы не так давно воевали на www.mysql.com (его убирали на некоторое
# время, типа он по старой версии, потому не актуален...
# но - отвоевали, вернули :))))
| C таким конфиг-файлом mysqld занимает в 6 раз меньше памяти, чем без него. Итак, запускаем:
/usr/home/lissyara/>echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/home/lissyara/>/usr/local/etc/rc.d/mysql-server.sh start
Starting mysql.
/usr/home/lissyara/>
/usr/home/lissyara/>ps -axj | grep mysqld
mysql 44512 1 44510 504 0 S p0 0:00,08 /bin/sh /usr/local/bin
mysql 44530 44512 44510 504 0 SN p0 0:00,15 /usr/local/libexec/mys
mysql 44531 44530 44510 504 0 SN p0 0:00,00 /usr/local/libexec/mys
mysql 44532 44531 44510 504 0 SN p0 0:00,00 /usr/local/libexec/mys
mysql 44533 44531 44510 504 0 SN p0 0:00,00 /usr/local/libexec/mys
root 44548 507 44547 504 2 S+ p0 0:00,02 grep mysqld
/usr/home/lissyara/>
| Так много процессов - потому как с тредами (на самом деле он один...).
С 5-кой разобрались. Теперь пример установки, для самой старой версии mysql, что есть в портах - 3.23.
/usr/home/lissyara/>cd /usr/ports/databases/mysql323-server/
/usr/ports/databases/mysql323-server/>make && make install && make clean
===> Vulnerability check disabled, database not found
You may use the following build options:
WITH_CHARSET=charset Define the primary built-in charset (latin1).
WITH_XCHARSET=list Define other built-in charsets (may be 'all').
WITH_OPENSSL=yes Enable secure connections.
WITH_LINUXTHREADS=yes Use the linuxthreads pthread library.
WITH_PROC_SCOPE_PTH=yes Use process scope threads
(try it if you use libpthread).
BUILD_OPTIMIZED=yes Enable compiler optimizations
(use it if you need speed).
BUILD_STATIC=yes Build a static version of mysqld.
(use it if you need even more speed).
WITHOUT_INNODB=yes Disable support for InnoDB table handler.
===> Extracting for mysql-server-3.23.59.n.20050301_3
^C
/usr/ports/databases/mysql323-server/>
| Чтож, опции, в большинстве своём, точно такие же, как и у 5.0. Соответсвенно правим файл /etc/make.conf (приведено без комментов, ибо нового ничё нет - смотрите предыдущий листинг)
# Для некоторых, особо тупых приложений, лучше указать версию MySQL,
# что используется, тут. Но - для совсем тупых не поможет и это.
DEFAULT_MYSQL_VER=323
# Директория где лежат порты
PORTSDIR?= /usr/ports
# для сервера
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql323-server
BUILD_OPTIMIZED=yes
BUILD_STATIC=yes
# Единственный пункт, по которому нужны, наверно, пояснения.
# Просто без него у меня не заводилось...
#WITHOUT_INNODB=yes
.endif
# для клиента
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql323-client
.endif
| После рихтовки /etc/make.conf снова запускаем компиляцию:
/usr/ports/databases/mysql323-server/>make && make install && make clean
| Которая по окочании установки клиента вываливается с ошибкой, похожей на ту, что и у mysql 5.0:
===> Installing ldconfig configuration file
===> Compressing manual pages for mysql-client-3.23.59.n.20050301_2
===> Registering installation for mysql-client-3.23.59.n.20050301_2
===> Returning to build of mysql-server-3.23.59.n.20050301_3
Error: shared library "mysqlclient.10" does not exist
*** Error code 1
Stop in /usr/ports/databases/mysql323-server.
/usr/ports/databases/mysql323-server/>
| Лечение тоже самое - перезагрузка, или
/usr/home/lissyara/>/sbin/ldconfig -m /usr/local/lib/mysql
/usr/home/lissyara/>
| После чего всё нормально доинсталлируеся. Можно создавать конфиг /usr/local/etc/my.cnf
# Этот конфигурационный файл сделан на основе файла для маленьких
# систем - /usr/local/share/mysql/my-small.cnf.
#
# Вообще, конфигурационный файл можно положить в несколько мест:
# /etc/my.cnf
# /var/db/mysql/my.cnf
# /usr/local/etc/my.cnf
# В любом из них mysqld его найдёт, и достанет из него настройки.
# Самое корректное место, если судить по стартовому скрипту, это
# директория где лежат базы данных - /var/db/mysql/my.cnf.
# Опции для всех клиентов MySQL
[client]
# Пароль для подключения к БД
#password = your_password
# Порт на котором висит MySQL
port = 3306
# Сокет MySQL
socket = /tmp/mysql.sock
# Опции MySQL-сервера
[mysqld]
# Порт
port = 3306
# Адрес, который будем слушать (если вам не нужно подключаться к
# MySQL с других машин, то оставьте здесь 127.0.0.1)
bind-address = 127.0.0.1
# Где лежит сокет
socket = /tmp/mysql.sock
# Не использовать средства системных блокировок.
skip-locking
# Вообще не слушать порты TCP/IP. Это может применяться для большей
# безопасности, если все процессы, соединяющиеся с MySQL висят на томже
# хосте, что и mysqld. Все взаимодействия с mysqld будут осуществляться
# через Unix-сокеты, или именованые каналы.
# Заметтьте, что использование этой опции под форточками, без включчения
# именованных каналов (используйте опцию "enable-named-pipe") сделает
# работу MySQL бесполезной - ибо с mysqld никто не сможет соединиться :)
skip-networking
# Если Вы используете InnoDB, то закомментируйте эту опцию
skip-innodb
# С этой опцией MySQL не будет инициализировать библиотеку Berkeley DB,
# что позволит сэкономить большое количество памяти.
skip-bdb
# Hекоторое уникальное число между 2 и 2^32-1. Значения server-id должны
# быть различными на каждом сервере, участвующем в репликации. Если
# значение server-id не определено, оно будет установлено в 1, если
# также не определено значение master-host, оно будет установлено в 2.
# Обратите внимание, что если значение server-id опущено, то головной
# сервер будет отказывать в соединении всем подчиненным серверам, а
# подчиненный сервер - отказывать в соединении головному серверу.
# Таким образом, опускать установку значения server-id можно лишь в
# случае резервного копирования с использованием двоичного журнала.
server-id = 1
# Раскомментируйте эту опцию, для включения логгирования всех запросов
# Заметтьте - тока на время отладки! Потом надо закомментить и
# рестартануть MySQL!
# Файл должен существовать, с соответствующими правами на него:
# touch /var/log/mysql.log
# chown mysql:wheel /var/log/mysql.log
# chmod 640 /var/log/mysql.log
log = /var/log/mysql.log
# Указывает местоположение двоичного журнала обновлений,
# в котором будут вестись записи.
#log-bin=mysql-bin
[mysqldump]
# Если задан этот параметр, то обработчик таблицы при выполнении
# удаления не будет объединять индексы - в некоторых случаях это
# может ускорить данную операцию
quick
[mysql]
# Отключает автоматическое рехеширование. rehash следует использовать
# для получения хеша таблиц и полей. Это обеспечивает более
# быстрый старт mysql.
no-auto-rehash
# Опция, которую рекомендуется раскомментить начинающим :)
# Разрешает выполнять только операции UPDATE и DELETE, используя ключи.
#safe-updates
[isamchk]
key_buffer = 8M
sort_buffer_size = 8M
[myisamchk]
key_buffer = 8M
sort_buffer_size = 8M
[mysqlhotcopy]
# Допускать простой длительностью interactive_timeout секунд (вместо
# wait_timeout секунд) перед закрытием данного соединения.
interactive-timeout
| Можно заметить, что отличия от 5.0 минимальны - отсутствуют опции буферов, да и всё, пожалуй. Запускаем:
/usr/home/lissyara/>echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/home/lissyara/>/usr/local/etc/rc.d/mysql-server.sh start
Starting mysql.
/usr/home/lissyara/>ps -axj | grep mysql
mysql 8848 1 8846 504 0 S p0 0:00,07 /bin/sh /usr/local/bi
mysql 8868 8848 8846 504 0 S p0 0:00,06 /usr/local/libexec/my
root 8870 507 8869 504 2 L+ p0 0:00,01 grep mysql
root 8754 5368 8754 5344 1 S+ p1 0:00,02 tail -f /var/db/mysql
/usr/home/lissyara/>
| Всё пашет.
Теперь общие вопросы. По дефолту, в MySQL заведено несколько пользователей, типа гостей, и прочих. Я их обычно удаляю - нефига гостям по БД шляться....
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT COUNT(*) FROM user"
+----------+
| COUNT(*) |
+----------+
| 4 |
+----------+
/usr/home/lissyara/>mysql --database=mysql --execute="DELETE FROM user \
? WHERE User=''"
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT COUNT(*) FROM user"
+----------+
| COUNT(*) |
+----------+
| 2 |
+----------+
/usr/home/lissyara/>mysql --database=mysql --execute="DELETE FROM user \
? WHERE Host != 'localhost'"
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT COUNT(*) FROM user"
+----------+
| COUNT(*) |
+----------+
| 1 |
+----------+
/usr/home/lissyara/>
/usr/home/lissyara/>mysql --database=mysql --execute="UPDATE user SET \
? Password = PASSWORD('тут ввести пароль рута')"
/usr/home/lissyara/>mysql --database=mysql --execute="FLUSH privileges"
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT * FROM user"
ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO)
/usr/home/lissyara/>
| Всё. Без пароля к БД не добраться. Вообще, общая рекомендация - если плохо знаете MySQL - либо займитесь изучением, либо поставьте графический интерфейс, типа phpMyAdmin. Я вначале пошёл по второму пути, щас пытаюсь свернуть на первый :))) Единственное - не забывайте его запаролить.
P.S. При проблемах (не запускается), смотрим лог ошибок:
/usr/home/lissyara/>tail -f /var/db/mysql/`uname -a | awk '{print $2}'`.err
|
Ссылка на обсуждение: http://forum.lissyara.su/viewtopic.php?t=3410.
размещено: 2006-07-08,
последнее обновление: 2008-07-21,
автор: lissyara
|
|
|
|
2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту
Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis
Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS
Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
2011-06-15, -ZG-
Охранная система на FreeBSD+LPT
В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
2011-03-13, terminus
ng_nat
Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
2011-02-20, Капитан
Nagios+Digitemp
Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
2011-02-17, Le1
Zyxel Configuration
Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
2011-02-16, fox
hast carp zfs ucarp cluster
HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
2011-02-04, BlackCat
Восстановление ZFS
История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
2011-02-03, Капитан
1-Wire
Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
2011-01-28, Капитан
Температура в серверной
Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
2011-01-21, m4rkell
Syslog server
Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
2011-01-07, lissyara
Canon/gphotofs
Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
2010-12-13, Al
IPSec
Описание принципов работы IPSEC и способов аутентификации.
2010-12-07, manefesto
FreeBSD on flash
Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
2010-12-05, Fomalhaut
root ZFS, GPT
Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
2010-09-05, Cancer
Настройка аудиоплеера на ximp3
Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
2010-08-31, Cancer
Установка и настройка OpenVPN
На днях появилась задача - объединить головной офис и 3 филиала в одну сеть через интернет посредством OpenVPN, чтобы люди могли подключаться через RDP к базам 1С на серверах.
2010-08-25, manefesto
freebsd lvm
Использование linux_lvm для работы с LVM разделами из-под FreeBSD. Проблемы которые возники при монтирование lvm раздела
2010-04-30, gonzo111
proftpd file auth"a
Proftpd - квоты и авторизация из файлов, без использования базы данных и/или системных пользователей
2010-04-22, lissyara
tw_cli
Пошаговая инструкция по восстановлению RAID на контроллере 3ware, из которого выпал один диск. Настройка мониторинга состояния рейда и отчётов о его состоянии на email.
2010-04-14, fox
MySQL Master+Master
MySQL (Master Master) and (Master Slave) Как настроить репликацию…
2010-03-09, terminus
DNS zones
Краткий ликбез про управление DNS зонами. Примеры проведения делегирования прямых и обратных DNS зон.
2010-03-09, aspera
Squid+AD (group access)
Настройка прокси сервера SQUID с автроризацией пользователей в AD. Разделение пользователей на группы
2010-03-02, BlackCat
Шлюз: Часть 4
Настройка дополнительных сервисов: синхронизация времени (OpenNTPD), клиент DynDNS.org.
2010-03-01, BlackCat
Шлюз: Часть 3
Настройка DHCP и DNS серверов для работы внутри частной сети, c поддержкой внутренних (частных зон) DNS, а так же интеграция DHCP и DNS сервисов.
2010-03-01, BlackCat
Шлюз: Часть 2
Конфигурация МСЭ pf для проброса портов с изменением порта назначения и без, а так же поддержки активного режима FTP и ограничения максимального размера сегмента
2010-03-01, BlackCat
Шлюз: Часть 1
Быстрая настройка шлюза/маршрутизатора с установлением PPPoE-соединения, поддержкой NAT и DNS-forwarding.
2010-02-23, Morty
darkstat
Простая считалка траффика, со встроенным веб-сервером. Очень маленькая, может делать отчеты трафика по хостам, портам, протоколам, а также строить графики
2010-01-23, gonzo111
squid+sams+sqstat
Пилим squid и sams - примеры конфигов с объяснениями. Установка SqStat.
2009-12-19, schizoid
mpd5 + radius + ng_car + Abills
Настройка pppoe-сервера с биллинговой системой Abills и шейпером ng_car
2009-11-16, lissyara
UFS->ZFS
Удалённая миграция с UFS на ZFS. Загрузка с раздела zfs. Настройка для работы с малым количеством памяти под архитектурой i386.
2009-11-13, gx_ua
fusefs-ntfs
Установка, настройка и использование fusefs-ntfs, драйвер NTFS, предназанченного для монтирования NTFS разделов под FreeBSD
2009-11-12, Morty
LiveCD
Создание собственного LiveCD с необходимыми вам изменениями, автоматизирование данного процесса, а так же вариант скоростной сборки СД.
2009-09-27, lissyara
Samba как PDC
Контроллер домена - аналог M$ NT4 домена под самбой, без использования LDAP и прочей хиромантии. Просто и быстро =)
2009-08-30, terminus
ipfw nat
Подробное руководство по ipfw nat, сложные случаи конфигурации.
2009-08-24, levantuev
HotSpot
Установка Hotspot системы в общественное заведение.
2009-08-18, lissyara
diskless
Создание бездисковых терминалов под управлением FreeBSD - с загрузкой по сети. Используются для старта rdesktop и подключения к виндовому серверу терминалов.
2009-07-29, BAV_Lug
Видеонаблюдение
Настройка бюджетного варианта видеонаблюдения на удаленном объекте
2009-07-22, Cancer
OpenLDAP адресная книга
Настройка и создание адресной книги на базе OpenLDAP + phpLDAPadmin
2009-06-30, SergeySL
AimSniff
Руководство по созданию системы мониторинга ICQ-переписки на базе AimSniff, использующей базу данных MySQL для хранения и Web-интерфейс WAS (Web Aim Sniff) для просмотра перехваченных сообщений
2009-06-25, atrium
Управление правами доступа
Полномочия пользователей и файлов, принадлежащих им, формирует концепцию ОС UNIX.
2009-06-16, DNK
Exim+PgSQL
Установка почтовой системы exim+pgsql на FreeBSD 7.1
2009-05-30, mvalery
HDD(mbr) -> HDD(gpt)
Как разбить диск размером более 2TB на разделы, сделать загрузочным, а затем перенести на него информацию с рабочей системы — донора.
2009-05-22, Cancer
SendXMPP
Отправка сообщений на Джаббер сервер по средствам SendXMPP
2009-05-11, Raven2000
Network UPS Tools
Network UPS Tools представляет собой набор программ, которые обеспечивают общий
интерфейс для мониторинга и администрирование UPS оборудования.
2009-04-29, m0ps
IPSEC over GRE with RIP
Пример IPSEC over GRE и динамическим роутингом (RIP), с ADSL в качестве последней мили на оборудовании Cisco.
2009-04-24, WhiteBear777
qemu network
Появилась необходимость поставить на БСД эмулятор(qemu) и настроить в качестве гостевой ОС Windows XP, предоставив ей выход в локалку и в сеть internet...
2009-04-22, vp
freebsd + huawei 162 gsm modem
В статье описывается простой способ подключения модема huawei 162 к freebsd + первичная настройка smstools
2009-04-12, mvalery
Мониторинг RAID
Мониторинг из командной строки RAID компаний AMCC 3ware, HighPoint, Dell (Perc 5/i и PERC 6/i) и LSI (MegaRAID SAS 8408E и SAS1078)
2009-04-09, texnotronic
RAID1 via LAN
Функциональности DRBD во FreeBSD можно добиться примонтировав блочное устройство по сети при помощи GEOM Gate (ggate) и добавив его в зеркало с локальным диском средствами gmirror.
2009-04-03, Raven2000
Оптимизация хоста для CMS
В последнее время на старый и не очень быстрый ПК (Celeron 800 RAM 256) мною было навешано с десяток сайтов и некоторые были из серии тяжелых CMS. И так нам дано FreeBSD 7.1 и ~10 сайтов/CMS.
2009-04-01, atrium
VSFTPD + AD && MySQL
Настройка самого безопасного сервера FTP - vsftpd.
2009-03-31, Dron
Peoplenet + C-motech (3G)
Описание подключения к сети Peoplenet посредством 3G модема С-motech CCu-650U на FreeBSD
2009-03-25, lissyara
mod_auth_external
mod_auth_external - авторизация пользователей в apache c помощью внешней программы - например, системных пользователей.
2009-03-24, gx_ua
Lightsquid
Частично lightsquid может заменить sams: быстрая и простая инсталляция, быстрый парсер, cgi скрипт для динамической генерации отчета, нет привязки к БД, различные графические отчеты, мультиязычный инт
2009-03-18, LHC
Установка Zabbix-1.6
Установка и первоначальная настройка системы мониторинга Zabbix (версия 1.6)
|
Комментарии пользователей [53 шт.]