web-dev-qa-db-ja.com

MySQLをUbuntu 18.04にインストールする際の問題

オペレーティングシステムをアップグレードしてから、mysqlをインストールしました。しかし、rootパスワードに問題があるようです。私はこれをウェブ上でさまざまな方法で修正しようとしましたが、これまでのところ成功していません。

systemctl status mysql.serviceGive:

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Wed 2018-05-02 16:57:24 +07; 13s ago
  Process: 6172 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=217/USER)
Thg 5 02 16:57:24 thiennguyen systemd[1]: mysql.service: Service hold-off time  over, scheduling restart.
Thg 5 02 16:57:24 thiennguyen systemd[1]: mysql.service: Scheduled restart job,  restart counter is at 5.
Thg 5 02 16:57:24 thiennguyen systemd[1]: Stopped MySQL Community Server.
Thg 5 02 16:57:24 thiennguyen systemd[1]: mysql.service: Start request repeated too quickly
Thg 5 02 16:57:24 thiennguyen systemd[1]: mysql.service: Failed with result 'exit-code'.
Thg 5 02 16:57:24 thiennguyen systemd[1]: Failed to start MySQL Community Server

journalctl -xegive: http://codepad.org/6EbGVu2Q

mysql_secure_installation与える:

Securing the MySQL server deployment.
Enter password for user root: 
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

mysql -u root -p与える:

Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

特にインストールするとき、mysqlはrootのパスワードを設定する必要がなく、何度も再インストールしました。問題は古いかもしれませんが、ネットワーク上で多くの方法を見つけましたが解決できないので、助けを楽しみにしています。

4
VitVit

安全なインストール時にMySQLの古いパスワードを変更する必要があります。古いパスワードを覚えていない場合は、root権限で次の方法を試してください。

MySQLサービスを停止します。

service mysql stop

パスワードと権限チェックなしでMySQLを起動します。

mysqld_safe --skip-grant-tables &

MySQLに接続

mysql -u root mysql

以下のコマンドを実行して、rootユーザーの新しいパスワードを設定します。

UPDATE user SET password=PASSWORD('NEW_PASSWORD') WHERE user='root';
FLUSH PRIVILEGES;
service mysql restart

一部の新しいバージョンは上記のUPDATEクエリをサポートしていないため、以下を使用しようとしています

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
1
Ganesh

正しいとマークされた答えは技術的に正しくありません。 Ubuntu 18.04は、認証にソケットではなくパスワードを使用しています!!

https://websiteforstudents.com/mariadb-installed-without-password-prompts-for-root-on-ubuntu-17-10-18-04-beta/

私にとって、ログインは次のように簡単でした:

Sudo  mysql -u root      

この「機能」の責任者は誰でも本当にボールを落としたと感じます。 Ubuntuがmysqlを実行しようとしたときにパスワードを使用しなくなったことを示すメッセージが表示されているはずです。これは機能の大幅な変更でした。

7
user286904

インストール後:

  1. Sudo mysql
    

    (はい、ユーザーなしパスなし)

  2. これで、mysqlコンソールが表示されます。

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'my_new_pass';
    
  3. FLUSH PRIVILEGES;

  4. それでおしまい。これで、次回は通常どおりコンソールに入ることができます。

    mysql -u root -p my_new_pass
    
1
DimiDak

私はこの問題を認識しており、16.04を使用しても発生しませんでした。そして18.04では、解決するためにそれを使用しようとしました。

Sudo mysql_secure_installation

この場合、パスワードを設定できますが、機能しません

そして、そのコードは問題を解決しません。

UPDATE user SET password=PASSWORD('NEW_PASSWORD') WHERE user='root';
1
user9866732

これらのエラーを取り除き、同じデータベースを使用して16.04から18.04に移行するために、過去24時間ほど試してみましたが、見たすべてのWebページのどれも役に立ちませんでした。それは地獄でした。

systemctl status mysql.serviceおよびjournalctl -xeを試してみると、行き詰まりでした-手がかりはありません。

しかし、エラー:

ソケット '/var/run/mysqld/mysqld.sock'(2)を介してローカルMySQLサーバーに接続できません

18.04のmysql-serverの構造が少し異なることを理解させてください。インストール中に、/ etc/mysql/FROZENのようなファイルを何度も見ました。

そして、私が理解したのは、私が深く理解したときだけです。私の間違いは、MySQLの異なるバージョンに起因するものでした。 mysql-server-5.7をインストールしていたので、ダウングレードを開始しなかったと確信しているにもかかわらず(mysql-server-5.7からmysql-server-5.6へ)ダウングレードを開始したとのことです。

私のために働いた唯一の解決策は:/ var/lib/mysqlからすべてのファイル(およびデータベース)を手動で削除し、mysql-serverおよびmysql-clientを再インストールする

別の場所にコピーしましたが、復元できませんでした。したがって、問題はデータベースにあり、移行できないものでした。また、Ubuntu 18.04用のmysql-server-5.6も見つかりませんでした(私が読んだ、誰かが手動でコンパイルしてそれをした)。幸い、それはテストサーバーで作成されたので、価値のあるものは何も失われませんでした。しかし、とにかく、次回は既存のデータベースを保持するのではなく、Ubuntuバージョンの移行前にMySQL dbバックアップを作成してクリーンインストールします

0
sanka

また、MySQLとMariaDBの両方で多くの問題が発生しました(ubuntu 18.04)。 MariaDBを動作させることができませんでした。私は両方とも `apt-get`と` dpkg`なしでMySQLとMariaDBをUbuntu 16.04から強制的に削除する方法?

$ dpkg --list|grep -i mysql 

そして

$ dpkg --list|grep -i mariadb

$ dpkg -remove --force-remove-reinstreq <package-list>

次に https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/ の説明に従ってMySQLをインストールしました

再起動後も、現在は正常に機能しています。なぜこのソリューションがもっと広く普及しないのか分からない!

0
Gert Kruger