приветствую всех
возникла необходимость установить mysql
но если на предыдущей версии OS трабл не было (сейчас 42.1), просто скачал с mysql.com и установил rpm
то теперь какие-то темные электрические силы начались
1. при попытке установить rpm с оф сайта получаю ответ на команды типа /etc/init.d/mysql status и /etc/init.d/mysql start, что работать он не хочет и не будет, да и ставится все это с жалобами на какие-то недостающие ключи
2. в общем не стал разбираться запустил яст и установил из него mysql com-ty server и иже с ним
но теперь на просьбы типа /etc/init.d/mysql status
отвечает bash: /etc/init.d/mysql: Нет такого файла или каталога
соответственно: куча установленного барахла и софта, а сервака нет и поныне
я уже головой об асфальт бьюсь, не выходит каменный цветок, помогите
есть еще пару моментов
команда service mysql status
выдает
mysql.service - MySQL server
Loaded: loaded (/usr/lib/systemd/system/mysql.service; disabled)
Active: activating (start-pre) since Sat 2016-01-09 22:55:33 MSK; 2s ago
Process: 6391 ExecStartPre=/usr/lib/mysql/mysql-systemd-helper install default (code=exited, status=0/SUCCESS)
Control: 6399 (mysql-systemd-h)
CGroup: /system.slice/mysql.service
`-control
|-6399 /bin/bash /usr/lib/mysql/mysql-systemd-helper upgrade default
`-6501 sleep 1
Jan 09 22:55:33 linux mysql-systemd-helper[6391]: Fatal error in defaults handling. Program aborted
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: [102B blob data]
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: Fatal error in defaults handling. Program aborted
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: Checking MySQL configuration for obsolete options...
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: Trying to run upgrade of MySQL databases...
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: Stale files from previous upgrade detected, cleaned them up
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: Running protected MySQL...
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: Waiting for MySQL to start
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: [92B blob data]
Jan 09 22:55:33 linux mysql-systemd-helper[6399]: Fatal error in defaults handling. Program aborted
не совсем понимаю че он хочет
на команду service mysql start
отвечает:
Job for mysql.service failed. See "systemctl status mysql.service" and "journalctl -xn" for details.
на команду mysql -uroot
отвечает:
mysql: Can't read dir of '/etc/my.cnf.' (Errcode: 2 - No such file or directory)
Fatal error in defaults handling. Program aborted
(файл настройки реально не был создан сам)
Для начала посмотрите через mc ту rpm-ку, которую вы качали с офф сайта, на предмет путей и файлов в ней, и удалите руками всё что от туда поставилось. Ну или через Yast удалите всё что связано с MySQL и MariaDB. Желательно удалить и все конфиги вручную.
Если уж хочется именно mysql com-ty server, то и ставьте только его.
После установки
systemctl enable mysql.service
systemctl start mysql.service
Смотрим что всё в порядке, то есть active(running), и ready for connections
systemctl status mysql.service
И выполняем скрипт
mysql_sequre_installation
где задаём пароль root-а.
первая sudo systemctl enable mysql.service
прошла успешно
вторая sudo systemctl start mysql.service
выдает:
Job for mysql.service failed. See "systemctl status mysql.service" and "journalctl -xn" for details.
я так понимаю, что я что-то запорол?
команда systemctl status mysql.service
выдает:
mysql.service - MySQL server
Loaded: loaded (/usr/lib/systemd/system/mysql.service; enabled)
Active: activating (start-pre) since Вс 2016-01-10 02:39:12 MSK; 54s ago
Process: 18546 ExecStartPre=/usr/lib/mysql/mysql-systemd-helper install default (code=exited, status=0/SUCCESS)
Control: 18554 (mysql-systemd-h)
CGroup: /system.slice/mysql.service
└─control
├─18554 /bin/bash /usr/lib/mysql/mysql-systemd-helper upgrade default
└─19781 sleep 1
Если не ошибаюсь, уже во всех дистрибутивах по умолчанию используется MariaDB. Зачем вам mysql?
oS Leap 42.1x64KDE
~ Morpheus, i know linux...
привык, но если разницы нет, может подскажете как убрать первый и установить второй?
итак, марию поставил из яст
https://en.opensuse.org/SDB:LAMP_setup
здесь посмотрел подсказки
и опять запнулся на моменте sudo systemctl start mysql.service
вновь выдает Job for mysql.service failed. See "systemctl status mysql.service" and "journalctl -xn" for details.
нигде не могу найти решения проблемы
Я же вчера (хотя для многих уже сегодня) специально для вас проверил что MySQL устанавливается вместо MariaDB, и успешно после этого запускается.
Залогиньтесь нормальным рутом.
И посмотрите что говорит
journalctl -xn
после выполнения
systemctl start mysql.service
linux:~ # systemctl start mysql.service
Job for mysql.service failed. See "systemctl status mysql.service" and "journalctl -xn" for details.
linux:~ # journalctl -xn
-- Logs begin at Tue 2015-12-29 17:17:10 MSK, end at Sun 2016-01-10 16:42:56 MSK. --
Jan 10 16:42:56 linux mysql-systemd-helper[22242]: Fatal error in defaults handling. Program aborted
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: [102B blob data]
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: Fatal error in defaults handling. Program aborted
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: Checking MySQL configuration for obsolete options...
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: Trying to run upgrade of MySQL databases...
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: Stale files from previous upgrade detected, cleaned them up
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: Running protected MySQL...
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: Waiting for MySQL to start
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: [92B blob data]
Jan 10 16:42:56 linux mysql-systemd-helper[22250]: Fatal error in defaults handling. Program aborted
чет проблематично все как-то слишком, даже в чудовищной винде установка мускула это батник на две строчки
но тут аж руки опускаются, слишком много моментов надо учитывать
сделал, после того как вернусь домой расскажу как
но пока статус active, потом буду проверять соединение
1. удалил все что было связано с mysql
2. zypper in mariadb mariadb-tools
3. проверил наличие /etc/my.cnf
4. systemctl enable mysql.service
5. systemctl start mysql.service
6. systemctl status mysql.service
7. убедился что Active: active (running)
8. вот сейчас буду ковырять соединение
Вероятно от скачанного с сайта остались какие-нибудь либы, или поломанная (неполностью созданная база), из-за этого нормально не стартовал мускуль из репозитория.
итак, что имеем:
1. установленную марию, клиента, целый вагон и маленькую тележку прочего хлама
2. трясущиеся руки и громкая матершина
ну если с первым пунктом все более или менее понятно, то по второму поясню
пытаюсь попасть на мускул, но не могу, попросту не могу ввиду не пустого пароля
так как с пустым попросту не пускает
ну ладно, вооружился советами с кучи сайтов, делаю:
mysqladmin -u root password мойпароль
ответ:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
ну ладно, попробовал воспользоваться командой:
mysql_sequre_installation
ответ:
If 'mysql_sequre_installation' is not a typo you can use command-not-found to lookup the package that contains it, like this:cnf mysql_sequre_installation
ударившись как следует головой об клавиатуру, нашел еще вариант:
mysql --skip-grant-tables
ответ:
mysql: unknown option '--skip-grant-tables'
итак...
как доказать мускулу, что после установки у него должен быть пустой пароль, или как сбросить существующий?
подскажите плиз я уже устал
Ну во-первых mysql_SECURE_installation, во-вторых не забудте ssh включить\открыть порт.
зыЖ по умолчанию с локалхоста доступа нету вроде. занимался на убунте, но вроде решалось mysql_secure_installation(S?).
oS Leap 42.1x64KDE
~ Morpheus, i know linux...
Я ведь тоже могу допустить ошибку при ручном перепечатывании имени команды из виртуальной машины.
Команда называется mysql_secure_installation и находится в /usr/bin.
Просто в консоли от рута наберите mysql и нажмите 2 раза кнопку Tab, баш покажет все команды начинающиеся на mysql.
И вобще почитайте про автодополнение команд в bash.
После установки у мускуля нет базы, она создаётся при первом запуске, и обычно располагается в /var/lib/mysql, если не указано другое.
Соответственно и пароль рута базы тоже отсутсвует, ведь привелегии хранятся в базе.
Если создание базы при предыдущих запусках не закончилось нормально, то возможны всякие глюки.
Удаляйте все файлы в каталоге /var/lib/mysql, только сами каталоги не трогайте, и запускайте secure_installation.
эт да, второе сообщение меня немного запутало, а я по незнанию и уперся в ошибку
короче мускул вполне так нормально отреагировал на команду, правда не сразу, но потом я его таки замучал 10тикратным повторением
и он согласился с тем, что его надо настроить
и по итогу мне удалось это
спасибо всем кто мне помогал, ибо я уже был в истерике как детсадовская девочка
но вы не дали мне отчаятся и вернуться к win
спасибо
Главное правильно раскурить....
oS Leap 42.1x64KDE
~ Morpheus, i know linux...
нет, все же есть один вопрос
как заставить службы apache2 и mysql стартовать автоматически
спасибо
А в чём проблема то?
systemctl enable mysql.service
systemctl enable apache2.service
По systemctl status чегонибудь.service cмотрим что всё в порядке, то есть active, значит включен при загрузке. После active идёт состояние службы (запущена, или нет)
Например:
sql:~ # systemctl status apache2.service
apache2.service - The Apache Webserver
Loaded: loaded (/usr/lib/systemd/system/apache2.service; enabled)
Active: active (running) since Вс 2015-07-26 00:27:35 YEKT; 5 months 29 days ago
Main PID: 881 (httpd2-prefork)
sql:~ # systemctl status mysql.service
mysql.service - MySQL server
Loaded: loaded (/usr/lib/systemd/system/mysql.service; enabled)
Active: active (running) since Вс 2015-08-02 17:58:24 YEKT; 5 months 21 days ago
Process: 30144 ExecStartPost=/usr/lib/mysql/mysql-systemd-helper wait default (code=exited, status=0/SUCCESS)
Process: 30134 ExecStartPre=/usr/lib/mysql/mysql-systemd-helper upgrade default (code=exited, status=0/SUCCESS)
Process: 30127 ExecStartPre=/usr/lib/mysql/mysql-systemd-helper install default (code=exited, status=0/SUCCESS)
Main PID: 30143 (mysql-systemd-h)
...
авг 02 17:58:23 sql mysql-systemd-helper[30143]: 150802 17:58:23 [Note] /usr/sbin/mysqld: ready for connections.
авг 02 17:58:23 sql mysql-systemd-helper[30143]: Version: '10.0.20-MariaDB' socket: '/var/run/mysql/mysql.sock' port: 3306 openSUSE package
авг 02 17:58:24 sql mysql-systemd-helper[30144]: MySQL is alive
Была похожая проблема, решал полным удалением mysql и /var/lib/mysql/
Сейчас тоже почти всё работает, но не создаётся сокет при старте системы в /var/run/mysqld/ приходится руками после рестарта создавать.
mkdir /var/run/mysqld
mkfifo /var/run/mysqld/mysqld.sock
chown -R mysql /var/run/mysqld
А как он вообще раньше создавался? Может подскажет кто?
И знающие люди поясните, тут писали что mysql не нужен. Но почему при установке mariadb он сам устанавливается, точнее как бы идёт в составе mariadb. Сервисы все и папки разные тоже наименование имеют mysql.
У меня установлено:
С | Имя | Заключение | Тип
---+-----------------------+---------------------------------------------+------
| libmariadb-devel | Development files for the MariaDB Connect-> | пакет
| libmariadb3 | MariaDB connector in C | пакет
| libmariadb_plugins | Plugins for the MariaDB C Connector | пакет
| libmariadbprivate | Additional internal libraries for the Mar-> | пакет
i+ | mariadb | Server part of MariaDB | пакет
| mariadb-bench | Benchmarks for MariaDB | пакет
i+ | mariadb-client | Client for MariaDB | пакет
i+ | mariadb-errormessages | MySQL Community Server development header-> | пакет
| mariadb-test | Testsuite for MariaDB | пакет
i+ | mariadb-tools | MariaDB tools | пакет
opensuse leap 42.3
Так Mariadb, по сути, и есть MySQL. Этот форк был сделан для того чтобы можно было вносить изменения которые не принимались основной командой разработчиков mysql. А выпилить из форка все названия mysql совсем не просто из за зависимостей и обратной совместимости.
По поводу сокета, надо смотреть почему юнит systemd не может создать этот файл. Может проблема в том что /var/run находится не на диске, некоторым юнитам это не нравится. В общем надо смотреть journalctl, что он пишет про запуск этого юнита.