Как подключить и создать базу данных в MySQL?

Я хочу установить MySQL и создать на нем базу данных, используя следующий код:

sudo apt-get install mysql-server
mysqladmin -h localhost -u {username} -p create lrs

Я получаю следующее сообщение после выполнения второй строки:

    Enter password:
    mysqladmin: connect to server at 'localhost' failed
    error: 'Access denied for user '{username}'@'localhost' (using password: YES)'

Что такое проблема?

17
задан 23 March 2013 в 00:01

6 ответов

Запустите эту команду:

sudo dpkg-reconfigure mysql-server-5.5

(5.5 - это номер версии, адаптируйтесь, если у вас другая версия)

Это позволит вам установить свой корневой пароль MySQL, чтобы вы затем можно использовать с командами mysqladmin и mysql.

0
ответ дан 23 March 2013 в 00:01

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

Во-первых, как вы упомянули, давайте сделаем установку,

sudo apt-get install mysql-server

После того, как вы ее установили, давайте попробуйте небольшой тест,

sudo netstat -tap | grep mysql

Когда вы запустите это, вы должны увидеть этот ответ,

tcp        0      0 localhost:mysql         *:*                LISTEN      2556/mysqld

Если это не работает правильно, запустите эту команду перезапуска,

[ 113]

Теперь нужно настроить сервер.

Перейдем к /etc/mysql/my.cnf для настройки основных настроек. Это включает в себя файл журнала, номер порта и т. Д. Например, чтобы настроить MySQL для прослушивания соединений от сетевых хостов, измените директиву bind-address на IP-адрес сервера:

bind-address            = 192.168.0.5
[ 1117] После этого перезапустите демон MySQL,

sudo service mysql restart

Если вы хотите изменить корневой пароль MySQL, запустите:

sudo dpkg-reconfigure mysql-server-5.5

Демон будет остановлен, и вы будет предложено ввести новый пароль.

Как только вы закончите, вы должны быть настроены, и несколько поисков в Google научат вас создавать базу данных

Источник: Руководство по Ubuntu Server

0
ответ дан 23 March 2013 в 00:01

Необходимо соединиться с MySQL с помощью пользователя root и связанного пароля. Если необходимо установить их, используйте следующую команду: sudo mysqladmin -u root -h localhost password 'mypassword'

Оттуда, можно настроить дополнительные учетные записи следующим этот документ: Как Создать Нового Пользователя и Дать Разрешения в MySQL

1
ответ дан 23 March 2013 в 00:01

После того, как вы установили MySQL, вам нужно установить пароль root для mysql . Для этого:

  1. Введите следующую команду в терминале:

    mysql -u root

  2. Теперь он должен открыть MySQL консоль. И введите следующую строку:

    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');

Для выхода из консоли mysql введите exit.

Теперь вам нужно создать базу данных с пользователем root . Для этого:

  1. Откройте mysql с терминала:

    mysql -u root -p

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

  3. Введите следующую строку:

    CREATE DATABASE yourdatabasename;

Если вы введете SHOW DATABASES;, вы должны увидеть его в списке. Если это так, у вас есть готовая база данных!

0
ответ дан 23 March 2013 в 00:01

После того, как вы установили MySQL, вам нужно установить пароль root для mysql. Для этого:

Enter the next command in a terminal:

mysql -u root -p

Enter Password: (Enter your password here).
0
ответ дан 23 March 2013 в 00:01

Я знаю, что это 3 года, но у меня тоже была эта проблема, и я хотел опубликовать свой ответ на тот случай, если кто-нибудь другой сделает такой же поиск, как и я.

mysqladmin: connect to server at 'localhost' failed

Это указывает на то, что у вашего пользователя нет разрешения на подключение к самой базе данных, прежде чем он даже сможет войти в систему; не пользователь базы данных, ваш реальный пользователь Linux. Запустите все как суперпользователь: sudo mysql -u root -p

Только root (пользователь linux или пользователь с привилегиями sudo) может войти в mysql как root (пользователь базы данных). Я нигде не смог найти документальное подтверждение этого, но эксперименты доказали, что это так. Вы можете создать нового пользователя с теми же правами, что и у пользователя root, и это не будет ограничено.

sudo mysql -u root
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';
FLUSH PRIVILEGES;

Теперь «newuser» (или любое другое имя по вашему выбору) может быть зарегистрировано без необходимости использования sudo, и вы можете использовать его для всех административных нужд вашей базы данных.

0
ответ дан 23 March 2013 в 00:01