66462


# 動作環境

[code]

    $ lsb_release -a
    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 20.04 LTS
    Release:    20.04
    Codename:   focal
    
    $ mysql --version
    mysql  Ver 8.0.20-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))
    
[/code]

# 本題

[code]

    $ sudo mysql -u root -p
    Enter password: 
    
[/code]

にてローカル上のmysqlへのログインを試みると、

[code]

    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
    
[/code]

というエラーが出てログインすることができません。

mysqlのセーフモードでの起動も試みましたが失敗に終わりました。

[code]

    $ sudo systemctl stop mysql
    ~
    $ mysqld_safe --skip-grant-tables &
    [1] 7461
    ~
    $ 2020-05-09T09:53:03.108631Z mysqld_safe Logging to '/var/log/mysql/error.log'.
    /usr/bin/mysqld_safe: 144: cannot create /var/log/mysql/error.log: Permission denied
    2020-05-09T09:53:03.112185Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.
    /usr/bin/mysqld_safe: 144: cannot create /var/log/mysql/error.log: Permission denied
    
[/code]

管理者権限で実行しても結果は失敗でした。

[code]

    $ sudo mysqld_safe --skip-grant-tables &
    [1] 7641
    ~
    $ 2020-05-09T09:54:12.224601Z mysqld_safe Logging to '/var/log/mysql/error.log'.
    2020-05-09T09:54:12.226560Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.
    
[/code]

mysqlをpurgeしてからの再インストールも試しましたが、結果は同じでした。

[code]

    sudo apt purge mysql*
    sudo apt autoremove
    sudo apt autoclean
    sudo apt install mysql-server mysql-client
    
[/code]

mysqlへのログイン方法を教えて下さい。

# 追記

mysqldディレクトリを作成することで、エラー1045は出なくなりました。

[code]

    $ sudo mkdir /var/run/mysqld
    $ sudo chown mysql:mysql /var/run/mysqld
    
[/code]

しかし代わりにエラー2002が出現するようになりました。

[code]

    $ sudo mysql -u root
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
    
[/code]

質問のエラー対象が変わってしまったため、新たに質問を作成しました。  
↓  
[mysqlにERROR
2002でログインできない](https://ja.stackoverflow.com/questions/66460/mysql%e3%81%aberror-2002%e3%81%a7%e3%83%ad%e3%82%b0%e3%82%a4%e3%83%b3%e3%81%a7%e3%81%8d%e3%81%aa%e3%81%84)


CC BY-SA 4.0
2020-05-09T09:58:56.637
66458
2020-05-09T11:52:06.603
2020-05-09T11:32:04.557
9616
9616
question
mysql ubuntu
mysqlにERROR 1045でログインできない


mysqldディレクトリを作成することで、エラー1045は出なくなりました。

[code]

    $ sudo mkdir /var/run/mysqld
    $ sudo chown mysql:mysql /var/run/mysqld
    
[/code]

しかし代わりにエラー2002が出現するようになりました。

[code]

    $ sudo mysql -u root
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
    
[/code]

質問のエラー対象が変わってしまったため、新たに質問を作成しました。  
↓  
[mysqlにERROR
2002でログインできない](https://ja.stackoverflow.com/questions/66460/mysql%e3%81%aberror-2002%e3%81%a7%e3%83%ad%e3%82%b0%e3%82%a4%e3%83%b3%e3%81%a7%e3%81%8d%e3%81%aa%e3%81%84)


CC BY-SA 4.0
2020-05-09T11:52:06.603
66462
2020-05-09T11:52:06.603
9616
66458
answer