Ubuntuでは、以前、ターミナルで次のコードを使用してmysqlデータベースを作成しました。
$ my sql -u root -p
次に、mysql内で:
CREATE DATABASE securities_master;
このデータベースに関連するコンテンツを表示するためにファイルエクスプローラーを使用しようとしていました。しかし、/ var/lib/mysqlフォルダーを開くためのアクセス許可がなかったため、このフォルダーのアクセス許可を変更したいと思いました。私はstackoverflowで検索を行いましたが、何をしているかを完全に理解せずに、次のようなものを使用しました(私のユーザー名はweiです)。
Sudo chown -R root:wei /var/lib/mysql
または(残念ながら、ターミナルウィンドウを閉じてから、何を入力したのか正確にはわかりません)
Sudo chown -R wei:wei /var/lib/mysql
OR
Sudo chown -R wei /var/lib/mysql
これにより、ディレクトリ内を表示してファイルを表示できるようになったので、進歩していると思いました。しかし、これを実行すると、mysqlでデータベースを使用しようとしたときに次のことに気付きました。
USE securities_database;
次のようなエラーメッセージが表示されていました。
ERROR 1049 (42000): Unknown database 'securities_master'
これは、以前のchownの使用に関連していると思います。さらにスタックオーバーフロー検索でこれを調べたところ、「悪いことが起こる可能性がある」として、ルートから一部のファイルのルート所有権をわざわざ奪うべきではないという印象を受けました。私は次の方法でルートの所有権を復元しようとしました:
Sudo chown -R root /var/lib/mysql
および/または:
Sudo chown -R root:root /var/lib/mysql
しかし、残念ながら、私はまだ同じエラーメッセージを受け取るようです。
私の質問が非常に基本的であるか、またはそのような新人エラーであると思われる場合は、Ubuntu、Linux、およびmysqlのまったくの初心者であるとお詫びします。ありがとう。
/var/lib/mysql
内のすべての通常の所有権はmysql:mysql
です。したがって、次の方法で修正できるはずです。
Sudo chown -R mysql:mysql /var/lib/mysql