MySQL сменить пароль root в Debian подобных системах. Ubuntu mysql установить пароль


mysql не запрашивает пароль root при установке Ubuntu Linux

Вы можете восстановить или установить пароль root, не зная текущего, запустив mysql без загрузки таблиц грантов.

Обратите внимание на команду $ в командах. Это указывает подсказку терминала, которую вы видите при вводе команды. Он показывает, что это строка текста, но и фактическая типизированная команда терминала. Префикс « mysql> » также является приглашением. Это подсказка, которую вы получаете при запуске mysql интерактивно.

Это cli (командная строка), чтобы сделать это: (Перед выполнением шагов обязательно остановите текущий сервер . За один раз может работать только один сервер.)

$ sudo mkdir /var/run/mysqld; sudo chown mysql /var/run/mysqld $ sudo mysqld_safe --skip-grant-tables&

Теперь вы можете войти в систему как root без пароля и выполнить все команды, так как в этом случае установить пароль root как root.

$ sudo mysql --user=root mysql

Это заданный пароль root, который вы будете выполнять внутри mysql, если у вас есть MySQL 5.6 или ниже:

mysql> update user set Password=PASSWORD('new-password') where user='root'; flush privileges;

В MySQL 5.7 или выше

mysql> update user set authentication_string=PASSWORD('new-password') where user='root'; flush privileges;

Оттуда, закройте (запустите msqld) mysql и запустите его как обычно.

Примечания по запуску и остановке службы mysql:

Остановить mysql:

$ sudo service mysql stop

Начать mysql (обычный):

$ sudo service mysql start

Убейте временный сеанс безопасного режима mysql:

$ sudo mysqladmin shutdown

Я установил пароль таким образом:

После завершения установки mysql запустите команду:

sudo mysql_secure_installation

Он покажет:

ПРИМЕЧАНИЕ. ЗАПУСК ВСЕХ ЧАСТЕЙ ЭТОГО СКРИПТА РЕКОМЕНДУЕТСЯ ДЛЯ ВСЕХ СЕРВИСОВ MariaDB В ПРОИЗВОДСТВЕННОМ ИСПОЛЬЗОВАНИИ! ПОЖАЛУЙСТА ПРОЧИТАЙТЕ КАЖДЫЙ ШАГ ВНИМАТЕЛЬНО!

Чтобы войти в MariaDB для его защиты, нам нужен текущий пароль для пользователя root. Если вы только что установили MariaDB, и вы еще не установили пароль root, пароль будет пустым, поэтому вы должны просто нажать Enter здесь.

Enter current password for root (enter for none): (здесь нажмите Enter)

Хорошо, успешно использовал пароль, двигаясь дальше …

Установка корневого пароля гарантирует, что никто не сможет войти в корень пользователя MariaDB без соответствующей авторизации.

Set root password? [Y/n] y (press 'y' to set new password) New password: Re-enter new password:

Пароль успешно обновлен! Перезагрузка таблиц привилегий .. … Успех!

По-видимому, установка mysql-сервера на 16.04 (или любая установка 5.7?) Позволяет root-доступ не через пароль, а через плагин auth_socket . Запуск sudo mysql -u root (nb w / oa password) даст вам консоль mysql, тогда как запуск команды как не-root вызывает вас для пароля.

Казалось бы, смена пароля не имеет большого значения, поскольку сервер auth даже не проверяет пароль. Существует очень обширная статья о том, как изменить плагин и переключиться на аутентификацию пароля .

Добавляя к основному ответу, Если вы застряли в

" mysqld_safe Запуск mysqld-демона с базами данных из / var / lib / mysql "

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

$ sudo mysql --user=root mysql

Если вы попытаетесь сделать это в том же окне, он отключит процесс mysqld safemode.

ubuntu.fliplinux.com

Как установить MySQL 8.0 в Ubuntu 18.04

Сервер сообщества MySQL — бесплатная система с открытым исходным кодом, популярная и кросс-платформенная система управления базами данных. Он поддерживает как SQL, так и NoSQL и имеет подключаемую архитектуру движка хранилища. Кроме того, он также поставляется с несколькими соединителями баз данных для разных языков программирования, что позволяет разрабатывать приложения с использованием любого из известных языков и многих других функций. Есть специальные курсы по обучению MySQL, например, курс MySQL с нуля от WebShake.RU.

Он имеет множество применений в области хранения документов, облачных, высокодоступных систем, IoT (Internet of Things), Hadoop, большие данные, хранилище данных, LAMP или LEMP для поддержки высокопроизводительных веб-сайтов и приложений и многое другое.

В этой статье мы расскажем о новой установке базы данных MySQL 8.0 на Ubuntu 18.04 Bionic Beaver . Прежде чем перейти к действительным этапам установки, давайте рассмотрим особенности MySQL 8.0:

Что нового в MySQL 8.0

  • В базе данных теперь есть словарь транзакций.
  • Поставляется с поддержкой оператора Atomic DDL.
  • Усовершенствованная система безопасности и управления учетными записями.
  • Усовершенствования управления ресурсами.
  • Несколько улучшений InnoDB.
  • Новый тип резервного копирования.
  • Набор символов по умолчанию изменился на utf8mb4 с latin1.
  • Несколько усовершенствований JSON.
  • Поставляется с поддержкой регулярных выражений с использованием международных компонентов для Unicode (ICU).
  • Новый журнал ошибок, который теперь использует архитектуру компонентов MySQL.
  • Улучшения в репликации MySQL.Поддерживает общие выражения таблиц (как нерекурсивные, так и рекурсивные).
  • Имеет улучшенный оптимизатор.
  • Дополнительные функции окна и многое другое.

Шаг 1: Добавить репозиторий MySQL Apt

К счастью, существует APT- репозиторий для установки сервера MySQL, клиента и других компонентов. Вам нужно добавить этот репозиторий MySQL в список источников пакетов вашей системы; начните с загрузки пакета репозитория с помощью инструмента wget из командной строки.

$ wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb

Затем установите пакет репозитория MySQL, используя следующую команду dpkg.

$ sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb

Обратите внимание, что в процессе установки пакета вам будет предложено выбрать версию сервера MySQL и другие компоненты, такие как кластер, общие клиентские библиотеки или рабочие места MySQL, которые вы хотите настроить для установки.

Версия сервера MySQL mysql-8.0 будет автоматически выбрана, затем прокрутите страницу вниз до последней опции Ok и нажмите [Enter], чтобы завершить настройку и установку пакета выпуска, как показано на скриншоте.

Настройка MySQL APT Config

Шаг 2. Установка MySQL Server в Ubuntu 18.04.

Затем загрузите последнюю информацию о пакете из всех сконфигурированных репозиториев, включая недавно добавленный репозиторий MySQL .

$ sudo apt update

Затем выполните следующую команду для установки пакетов для сервера сообщества сообщества, клиента и общих файлов базы данных MySQL.

$ sudo apt-get install mysql-server Установка MySQL 8.0 в Ubuntu 18.04

Через процесс установки вам будет предложено ввести пароль для пользователя root для вашего сервера MySQL, повторно введите пароль, чтобы подтвердить его, и нажмите [Enter] .

Установка пароля Root MySQL

Затем появится сообщение конфигурации плагина аутентификации сервера MySQL , прочитайте его и используйте стрелку вправо, чтобы выбрать, Ok и нажмите [Enter], чтобы продолжить.

Конфигурация аутентификации MySQL

После этого вам будет предложено выбрать плагин аутентификации по умолчанию для использования, затем используйте стрелку вправо для выбора Ok и нажмите [Enter], чтобы завершить настройку пакета.

Выбор плагина аутентификации MySQL

Шаг 3: Безопасная установка сервера MySQL

По умолчанию установка MySQL небезопасна. Чтобы защитить его, запустите скрипт безопасности, который поставляется вместе с двоичным пакетом. Вам будет предложено ввести пароль root, который вы установили в процессе установки. Затем также выберите, использовать ли плагин VALIDATE PASSWORD или нет.

Вы также можете изменить пароль root, который вы установили ранее (как это было сделано в этом примере). Затем введите yes/y на следующие вопросы безопасности:

  • Удалить анонимных пользователей? (Нажмите y|Y для согласия, любая другая клавиша для отказа) : y
  • Запретить вход в систему удаленно? (Нажмите y|Y для согласия, любая другая клавиша для отказа) : y
  • Удалить тестовую базу данных и получить доступ к ней? (Нажмите y|Y для согласия, любая другая клавиша для отказа) : y
  • Обновить таблицы привилегий сейчас? (Нажмите y|Y для согласия, любая другая клавиша для отказа) : y

Запустите скрипт, выполнив следующую команду.

$ sudo mysql_secure_installation Безопасная установка сервера MySQL

Шаг 4. Управление сервером MySQL через Systemd

На Ubuntu после установки пакета его службы (службы) обычно запускаются автоматически после настройки пакета. Вы можете проверить, запущен ли сервер MySQL с помощью следующей команды.

$ sudo systemctl status mysql Проверка состояния сервера MySQL

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

$ sudo systemctl status mysql $ sudo systemctl enable mysql

Шаг 5: Установка дополнительных продуктов и компонентов MySQL

Кроме того, вы можете установить дополнительные компоненты MySQL, которые, по вашему мнению, вам нужны для работы с сервером, таких как mysql-workbench-community, libmysqlclient18 и многие другие.

$ sudo apt-get update $ sudo apt-get install mysql-workbench-community libmysqlclient18

Наконец, чтобы получить доступ к оболочке MySQL, выполните следующую команду.

$ sudo mysql -u root -p Подключение к MySQL Server

Вот и все! В этой статье мы объяснили, как установить MySQL 8.0 в Ubuntu 18.04 Bioni Beaver. Если у вас есть какие-либо вопросы или мысли поделиться, используйте форму комментариев ниже, чтобы связаться с нами.

Похожие посты

macrodmin.ru

невозможно установить пароль для Percona Server «root» user-ppc64el Ubuntu Linux

Enviroment

Я работаю в IBM и пытаюсь прототипировать netboot (pxe) для ubuntu. Этот вопрос используется для определения проблемы, возникшей при использовании juju для развертывания пакета https://jujucharms.com/u/openstack-charmers-next/openstack-base/40 . Пакет развертывает все необходимые службы (openstack, rabbitmq, ceph, mysql (percona) и т. Д. К сожалению, пакет openstack 40 из коробки не работает во время развертывания mysql / percona.

проблема

При настройке percona для mysql он не выполняется из-за

Не удалось установить пароль для пользователя root из Percona Server

Вышеупомянутое сообщение отображается в журнале для mysql на узле / машине, на которой запущен контейнер lxc для mysql / percona.

Если вы используете статус juju, вы увидите следующее:

mysql: charm: cs:~openstack-charmers-next/trusty/percona-cluster-7 exposed: false service-status: current: error message: 'hook failed: "install"' <===================== since: 14 Oct 2015 16:19:51Z relations: cluster: - mysql units: mysql/0: workload-status: current: error message: 'hook failed: "install"' <===================== since: 14 Oct 2015 16:19:51Z agent-status: current: idle since: 14 Oct 2015 16:19:51Z version: 1.24.6 agent-state: error agent-state-info: 'hook failed: "install"'

разрешение

Это показывает пример того, как исправить это, используя отдельный пакет только для mysql (percona). В принципе, нужно разрешить пакет openstack40 перейти к точке разрыва шарма mysql, а затем вам нужно исправить ситуацию. Ниже приведено упражнение, которое мы провели, чтобы заставить шарм mysql (percona) работать после того, как он попал в проблему. Просто измените percona.yaml на openstack yaml, который вы используете. Обратите внимание, что для ppc64le вы должны получить openstack 40 yaml и обновить его до arch = ppc64el, так как пакет charm store openstack 40 имеет только x86.

  1. Развертывание mysql / percona

    juju-deployer -c /root/.juju/bundles/percona.yaml -s 90 -d -v
  2. Удалите проблему с mysql-паролем. Проблема, указанная выше.

  3. Установить пароль в контейнере mysql

    chroot /var/lib/lxc/juju-machine-0-lxc-1/rootfs/ passwd root

    —> для пароля POC: xxxxxxxx

    exit

    Обратите внимание, что мы приводим пример lxc machine juju-machine-0-lxc-1in. Это должен быть lxc, к которому развертывается mysql.

  4. Вход в контейнер

    lxc-console -n juju-machine-0-lxc-1
  5. Решить проблему

    UPDATE mysql.user SET Password=PASSWORD('PASSW0RD') WHERE User='root'; FLUSH PRIVILEGES; exit

    https://serverfault.com/questions/502840/percona-mysql-unable-to-start-error-the-server-quit-without-updating-pid-file

  6. Скажите, что задумано очарование

    juju resolved mysql/0 --retry --show-log --debug
  7. Redrive, показывает, что предыдущие шаги развернуты и продолжаются от неудачного очарования.

    juju-deployer -c /root/.juju/bundles/percona.yaml -s 90 -d -v

ubuntu.fliplinux.com

MySQL сменить пароль root (Debian/Ubuntu, CentOS)

Пароль пользователя root задается при установке сервера баз данных, в некоторых случаях разрешается неограниченный доступ к MySQL (например, по умолчанию на CentOS). Сменить пароль root можно выполнив скрипт mysql_secure_installation или простой запрос UPDATE c указанием пользователя и нового пароля к системной базе данных из консоли MySQL — одним из вопросов заданных системой будет вопрос о необходимости смены пароля. При этом потребуется указать актуальный пароль.

 

Если пароль root не известен, но есть доступ по ssh на сервер, пароль также можно сменить, однако для этого потребуется остановить MySQL

 

 

Все команды выполняются от имени системного пользователя root.

Останавливаем сервер баз данных.

/etc/init.d/mysql stop

 

Запускаем его в фоновом режиме и с опцией —skip-grant-tables, пароль при этом не запрашивается и изменения данных внесены быть не могут (такие как обновление значений или удаление таблиц)

mysqld_safe —skip-grant-tables &

 

Подключаемся к MySQL от имени root

mysql -u root

 

Оказавшись в консоли MySQL выполняем последовательно несколько команд.

Используем таблицу mysql

USE mysql;

 

Устанавливаем новый пароль заменяя необходимым значением password в кавычках.

UPDATE USER SET PASSWORD=PASSWORD(«password») WHERE USER='root';

 

Обновляем данные о привилегиях:

FLUSH PRIVILEGES;

Выходим из консоли MySQL

EXIT;

 

 

MySQL сменить пароль root в CentOS

Для CentOS процедура абсолютно идентична, но для остановки сервера баз данных и его запуска используются команды для системы инициализации systemd

systemctl stop mysqld

 

mysqld_safe —skip-grant-tables &

 

mysql -u root

 

Далее в консоли сервера баз данных:

USE mysql;

UPDATE USER SET PASSWORD=PASSWORD(«password») WHERE USER='root';

FLUSH PRIVILEGES;

EXIT;

 

Запускаем MySQL

systemctl start mysqld

 

Подключаемся указывая новый пароль

mysql -u root -p

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

В частности, это позволяет подключиться от имени root тогда когда для пользователя с меньшими привилегиями исчерпан лимит подключений (в таких случаях возникает ERROR 1040 (HY000): Too many connections).

server-gu.ru

Как установить MySQL без подсказки пароля? Ubuntu Linux

Я пытаюсь установить MySQL на Ubuntu Natty без подсказки пароля. Тем не менее, я продолжаю запрашивать пароль на каком-то этапе после основной установки.

Кроме того, когда я действительно вхожу в то, что, как мне кажется, должен быть мой пароль (mymysqlpass), он дает мне уведомление об отказе в доступе. Затем, когда сценарий завершается, я могу войти в mysql без пароля, т.е. mysql -uroot, чего не должно произойти.

Следующие команды задают пароль root root MySQL, когда вы устанавливаете пакет mysql-server .

echo "mysql-server mysql-server/root_password password strangehat" | sudo debconf-set-selections echo "mysql-server mysql-server/root_password_again password strangehat" | sudo debconf-set-selections

Обратите внимание, что это создает текстовую копию вашего пароля в /var/cache/debconf/passwords.dat (который обычно /var/cache/debconf/passwords.dat только для чтения от root, и пароль будет удален системой управления пакетами после успешной установки пакета mysql-server ).

Обязательно используйте кавычки, если вы используете его в файле Dockerfile.

Теперь вы можете установить mysql-server и подсказка пароля не появляется:

sudo apt-get install mysql-server sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password password my_password' sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password my_password' sudo apt-get -y install mysql-server

это установит mysql без какого-либо вмешательства

Возможно, это не поможет вам:

export DEBIAN_FRONTEND=noninteractive

Что касается скрипта, я бы поставил пароль в кавычки:

mysql_pass="mymysqlpass"

Эта часть нуждается в перефразировке, если вы хотите поместить пароль между кавычками: mysql-server-5.1 mysql-server / root_password password '$ mysql_pass' '

Для того, чтобы:

"mysql-server-5.1 mysql-server/root_password password '$mysql_pass'"

Это сработало для меня (пустой пароль root):

sudo debconf-set-selections <<< "mysql-server-5.5 mysql-server/root_password password ''" sudo debconf-set-selections <<< "mysql-server-5.5 mysql-server/root_password_again password ''" sudo debconf-set-selections <<< "mysql-server mysql-server/root_password password ''" sudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password ''" export DEBIAN_FRONTEND=noninteractive sudo -E apt-get install -y -q mysql-server libmysqlclient-dev

ubuntu.fliplinux.com

Установка, изменение и сброс пароля root в MySQL

Это руководство объясняет, каким образом можно установить, измененить или сбросить (если вы забыли пароль) рутовый пароль в MySQL. Снова и снова я наблюдаю одну и ту же картину:

mysqladmin:  connect to server at ‘localhost’ failed error: ‘Access denied for user ‘root’@’localhost’ (using password: YES)’.

Поэтому я нашёл время, чтобы напомнить вам как решить связанную с этим проблему в MySQL. Если вы ищете быстрое решение проблемы по сбросу пароля root, можете найте его в конце данного руководства.

mysqladmin -команда, при помощи которой меняется пароль root в MySQL

Метод 1. Установка пароля root в первый раз.

Если вы никогда не устанавливали пароль root в MySQL, сервер не будет требовать пароля root для подключения к вашим базам данных. Чтобы впервые установить пароль MySQL используйте в консоли команду mysqladmin как показано далее:

mysqladmin -u root password newpass

где newpass будет пароль который вы устанавливаете.

Для изменения (обновления) пароля root воспользуйтесь следующей командой:

mysqladmin -u root -p oldpassword newpass

 

где oldpassword — ваш старый пароль, а newpassword соотвественно новый. Если же вы в ответ получили следующее сообщение:

mysqladmin: connect to server at ‘localhost’ failederror: ‘Access denied for user ‘root’@’localhost’ (using password: YES)’

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

Изменения пароля MySQL для других пользователей.

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

mysqladmin -u user-name -p oldpassword newpass

где user-name — имя пользователя для которого вы меняете пароль.

Метод 2 — Обновление или изменение пароля.

MySQL хранит имена пользователей и пароли в таблице пользователей внутри базы данных. Вы можете обновить пароль используя следующий метод:

1. Залогиньтесь в MySQL и введите следующую команду:

mysql -u root -p

2.  Начните работу с базой данных. В качестве приглашения для ввода команд вначале строки у вас должно быть mysql>

mysql> use mysql;

3. Смените пароль пользователя

mysql> update user set password=PASSWORD(«newpass») where User=’ENTER-USER-NAME-HERE’;

4. Перегрузите привелегии и отлогиньтесь

mysql> flush privileges;mysql> quit

Этот метод применим в случае использования на вашем сервере PHP и скриптов Perl.

Восстановление пароля root в MySQL.

Вы можете восстановить пароль от баз данных MySQL если повторите следующие 5 шагов:

  • Остановите демон MySQL.
  • Запустите демон MySQL (mysqld) с опцией —skip-grant-tables, т.к. в этом случае пароль не запрашивается.
  • Подключитесь к серверу MySQL c root-привелегиями
  • Введите новый пароль.
  • Выйдите и перегрузите демон MySQL.

Далее приводятся команды, которые необходимо использовать для каждого шага, при условии, что вы вошли в систему с root-привелегиями.

1. Останавливаем службу MySQL:

/etc/init.d/mysql stopStopping MySQL database server: mysqld.

2.  Запускаем службу с опцией —skip-grant-tables

mysqld_safe —skip-grant-tables &

Должен быть следующий вывод:

[1] 5988Starting mysqld daemon with databases from /var/lib/mysqlmysqld_safe[6025]: started

3.   Подключаемся с серверу MySQL при помощи клиента mysql:

mysql -u root

Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 1 to server version: 4.1.15-Debian_1-logType ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.mysql>

4. Вводим новый пароль для root:

mysql> use mysql;mysql> update user set password=PASSWORD(«NEW-ROOT-PASSWORD») where User=’root’;mysql> flush privileges;mysql> quit

5. Останавливаем сервер MySQL:

/etc/init.d/mysql stop

Stopping MySQL database server: mysqldSTOPPING server from pid file /var/run/mysqld/mysqld.pidmysqld_safe[6186]: ended[1]+  Done mysqld_safe —skip-grant-table

Запускаем MySQL-сервер и логинимся с новым паролем:

/etc/init.d/mysql startmysql -u root -p

Оригинал статьи youisbee.ru

www.skleroznik.in.ua

Смена root-пароля MySQL в Ubuntu

Когда-то я активно занимался изучением операционной системы Ubuntu, лелея надежды на отказ от Windows, но мечтам сбыться, было не суждено, а материал остался, и выкидывать его как-то жалко. Решил опубликовать на блоге, пусть будет. Может кому-то тоже понадобится сменить root-пароля MySQL в Ubuntu и вот ему готовая пошаговая инструкция.

  1. Останавливаем MySQL-сервер (опция stop):

    sudo /etc/init.d/mysql stop

  2. Запускаем mysqld_safe с опцией --skip-grant-tables:

    sudo /etc/init.d/mysqld_safe --skip-grant-tables &

    как я понимаю, mysqld_safe – это сценарий запуска MySQL в "безопасном режиме", или что-то в этом роде. Опция --skip-grant-tables (обратите внимание, перед опцией, стоит два знака минус), как можно догадаться из названия, запускает MySQL сервер без учёта таблицы привилегий, что позволяет обратиться к БД любому пользователю, без пароля и со всеми привилегиями. Знак амперсанта (&) в конце говорит о том, что процесс запускается в фоновом режиме.

  3. Соединяемся с MySQL-сервером как root:

    mysql -u root

    Как вы видите, здесь не надо использовать sudo и/или полный путь.

  4. Войдя в терминал работы с MySQL (строка начинается с mysql>), можно приступить к замене пароля для пользователя root:

    • Выбираем БД с именем mysql, к которой будут осуществляться запросы:

      use mysql

    • Обновляем значение поля password, где поле user имеет значение root, а поле host значение localhost:

      update user set password=PASSWORD('new_password') where user='root' and host='localhost';

      Обратите внимание, что для защиты пароля используется SQL-функция PASSWORD(), а сама БД mysql (как я понимаю) является системной.

    • Дальше нам нужно обновить кэш с привилегиями, для чего мы будем использовать команду flush с соответствующей опцией:

      flush privileges;

    • Выходим из консоли mysql:

      \q

  5. Останавливаем все процессы с именем mysqld_safe:

    killall mysqld_safe

  6. Запускаем демона MySQL:

    sudo /etc/init.d/mysql start

  7. Пробуем зайти под root с новым паролем. Для этого соединяемся с MySQL (как в пункте 3), но уже с дополнительным параметром -p:

    mysql -u root -p

    После этого вас попросят ввести пароль (Enter password:)

На этом у меня всё. Спасибо за внимание. Удачи!

chuvyr.ru