この記事では、MySQLと、ツールでユーザーとデータベースを管理する方法について説明します。
MySQLとは何ですか?
データベースは、組織化されたデータのコレクションです。それらを使用して、クレジットカード情報、製品ID、価格、物事のリストなどの純粋なデータを保存できます。ただし、画像、ファイル、ドキュメントなど、より複雑なものは保存しません。それが役立つ場合は、後で保存、処理、または取得するために生データをコピーするだけのMicrosoft®、Excel®に少し似ています。また、MySQL®は非常に一般的に使用されているタイプのLinux®データベースです。
MySQLとMariaDB
MySQLがインストールされている可能性がありますが、MariaDB®と呼ばれているようです。 Oracle®が2010年にMySQLを買収したとき、元の創設者は、OracleがMySQLを廃止した場合に備えて、同様の代替品としてMariaDBを作成しました。したがって、MySQLとMariaDBはほぼ同じであり、互換性があります。この記事の情報は両方に適用されます。
次のコマンドを実行して、データベースのバージョンを確認します。
# mysql -v
次のいずれかの方法を使用してデータベースにログインします。
方法1:rootとしてSSHでログインし、MySQLにログインします
これがすでにデフォルトのオプションである場合は、そのままにしておくことを検討してください。そうでない場合は、選択したテキストエディタで次のファイルを作成してください。
# vim /root/.my.cnf
[client]
user=root
password=<password>
または、必要に応じて、代わりに次のコマンドで作成できます:
# echo -e "\n[client]\nuser=root\npassword=<PASSWORD>" >> /root/.my.cnf
SecureShell(SSH)をroot
としてサーバーに接続します 、次のコマンドを実行してMySQLにログインします。
# mysql
方法2:サーバーにSSHで接続してから、MySQLにログインします
最初にサーバーにSSHで接続する場合、ユーザーはlocalhost
からMySQLに接続します すでにMySQLを搭載したマシンを使用しているためです。
次のコマンドを実行して、ローカルホストからログインします。
# mysql -u <USER> -p
方法3:MySQLに直接接続する
コンピューターからMySQLに直接接続する場合は、MySQLサーバーのホスト名またはIPアドレスが必要です。次に、次のコマンドを実行します。
# mysql -h <HOSTNAME_OR_IP> -u <USER> -p
MySQLのワイルドカード
ソフトウェアでは、ワイルドカードはアスタリスク(*)で表される一種のプレースホルダーです。この*
文字/数字/記号の任意の組み合わせを意味する可能性があるため、「12345」を1* or *3* or *5
として表すことができます。 。たとえば、文字Mで始まる名前を検索する場合は、M*
を検索できます。 。
MySQLでは、ワイルドカード文字はパーセント(%)記号です。
たとえば、次のコマンドを実行して、 schemaという単語で終わるすべてのデータベースを検索します。 :
> show databases like "%schema";
これらはいくつかの一般的なMySQLコマンドです:
注: すべてのMySQLコマンドをセミコロン(; )で終了します 。
データベースの一覧表示:
> show databases;
データベースを作成する:
> create database <DATABASE>;
データベースを削除する:
> drop database <DATABASE>;
すべてのユーザーはどこかから接続します。ホストがlocalhostと表示されている場合 、最初にサーバーに接続し、次にMySQLに接続します。IPアドレスとして表示されている場合は、MySQLに直接接続しています。
DBユーザーを表示する:
> select user, host from mysql.user;
DBユーザーと暗号化されたパスワードを表示する:
> select user, host, password from mysql.user;
完全な権限を持つユーザーを作成する:
> grant all on *.* to sher@localhost identified by "sdF5";
これは、ローカルホスト、IPアドレス、またはすべての場所の%(推奨されません)の場合があります:
> grant all on *.* to [email protected] identified by "sdF5";
ユーザーの名前を変更するか、ホストを変更します:
> rename user user@ip1 to user@ip2;
更新:
> flush privileges;
権限、付与、および権限コマンド
MySQLでは、通常のLinuxベースの読み取り、書き込み、および実行のルールは適用されません。代わりに、権限を特権としてユーザーに割り当てます。 または助成金 、これははるかに詳細で具体的です。次のセクションでは、いくつかの例を示します。
ユーザーの許可を表示する:
> show grants for '<user>'@<localhost/IP>;
ユーザー許可を追加する:
> GRANT SELECT,INSERT,UPDATE on <database>.* to <user>@<localhost/IP>;
すべてのユーザー許可を削除します:
> revoke ALL on *.* from <user>@<localhost/IP>;
データベースを作成し、そのユーザーを追加します(読み取り/書き込みはすべてを意味します):
> create database dbase;
> grant all on dbase.* to <user>@<localhost/IP> identified by 'passwd';
次のリストは、一般的なMySQL助成金の一部を示しています。
- すべての特権 :すべてのアクセス(特定のDB /すべてへ)
- 作成 :新しいテーブル/DBを作成する
- ドロップ :テーブル/DBを削除する
- 削除 :テーブルから行を削除する
- 挿入 :テーブルに行を挿入します
- 選択 :Selectコマンドを使用して、DBを読み通します(読み取り専用)
- 更新 :テーブルの行を更新する
- 使用法 :特権なし、デフォルト
- 付与オプション :他のユーザーの権限を付与または削除する
- CRUD :作成、読み取り、更新、削除
コメントや質問をするには、[フィードバック]タブを使用します。また、私たちと会話を始めることができます。