GNU/Linux >> Linux の 問題 >  >> Linux

Linux用のMySQLデータベースコマンドのチートシート

両方のMySQL およびMariaDB オープンソースのリレーショナルデータベース管理システム( RDBMS )。 MySQL以降 コミュニティリリースまたはエンタープライズリリースのいずれかに分類されます。

MariaDB すべての構造化クエリ言語( SQL )をパレードするためのドロップイン代替品になりました ) MySQLが提供する機能 ただし、オープンソースのコストがかかります。

したがって、 MySQL Enterprise Editionを使用しているかどうか 、 MySQL Community Edition 、または MariaDB 、この記事はあなたのためです。読み終えるまでに、これらの RDBMSによって模倣された強力な構造化クエリ言語の使用に慣れているはずです。 。

LinuxにMySQLサーバーをインストールする

MySQL またはMariaDB は公式リポジトリで利用可能であり、示されているようにパッケージマネージャーを使用してインストールできます。

----------- MySQL ----------- 
$ sudo apt install mysql-server     [On Debian, Ubuntu and Mint]
$ sudo apt install mysql-server   [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]

----------- MariaDB -----------
$ sudo apt install mariadb-server   [On Debian, Ubuntu and Mint]
$ sudo dnf install mariadb-server   [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]

MySQLの事前設定セットアップ

MariaDBがある場合 またはMySQL インストールの場合、最初のステップは常に MySQL を開始、有効化、およびステータスを確認することです。 。 MySQLを有効にする Linuxシステムを正常に再起動した後でも、常に実行されていることを確認します。

MySQLを開始するには 、コマンドを実行します:

$ sudo systemctl start mysql/mysqld
OR
$ sudo systemctl start mariadb

MySQLを有効にするには 、コマンドを実行します:

$ sudo systemctl enable mysql/mysqld
OR
$ sudo systemctl enable mariadb

MySQLを確認するには ステータス、コマンドを実行します:

$ sudo systemctl status mysql/mysqld
OR
$ sudo systemctl status mariadb

これで、 MySQLが確実になりました 稼働しているので、いくつかの設定を行います。新しいMySQL/ MariaDBの場合 インストールの場合、MySQLのインストールを保護するために次のスクリプトを実行することをお勧めします。

$ sudo mysql_secure_installation

次に、プロンプトが表示されたオプションに進んで、 MySQLを適切に構成する必要があります。 インストール。

MySQLデータベース管理コマンド

MySQLに接続するには データベースについては、次の構文規則に従ってください。

$ mysql -u [username] -p

まず、データベースへのアクセスは、以下に示すようにrootユーザーを介して行われます。

$ mysql -u root -p

これで、 MySQLの内部に入りました。 データベースシェルでは、いくつかのSQLクエリを実行できます。

新しいMySQLユーザーを作成する

新しいMySQLを作成するには ユーザーは、次のSQLコマンドを実行します。

MariaDB [(none)]> CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_user_password'; 

このユーザーにrootユーザーと同じ権限を付与するには、次のコマンドを実行します。

MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'your_user'@'localhost';
MariaDB [(none)]> EXIT;

DBに接続するには このユーザーでコンソールを使用し、最初にMySQLを終了し、新しいユーザー資格情報を使用して再入力します。

$ mysql -u your_user -p

MySQLデータベースの操作

すべてのアクティブなMySQLを表示するには データベースの場合は、次のコマンドを実行します:

MariaDB [(none)]> SHOW DATABASES; 

新しいMySQLを作成するには データベース、実行:

MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS database_name;

MySQLを削除するには 使用しなくなったデータベースを実行します:

MariaDB [(none)]> DROP DATABASE IF EXISTS database_name;

特定のMySQLに切り替えるには データベース、実行:

MariaDB [(none)]> USE database_name;

MySQLデータベーステーブルの操作

特定のデータベースに接続している場合は、 MySQLを一覧表示できます。 次のコマンドでデータベースに関連付けられたテーブル:

MariaDB [(none)]> USE database_name;
MariaDB [(none)]> SHOW TABLES;

新しいデータベーステーブルを作成するには、以下に示すように、その列定義も提供する必要があります。

CREATE TABLE IF NOT EXISTS table_name(
column_list
);

既存のデータベーステーブルを削除するには、次のコマンド構文を参照してください。

MariaDB [(none)]> DROP TABLE IF EXISTS table_name;

既存のデータベーステーブルに新しい列を追加するには、次のコマンド構文を実装します。

MariaDB [(none)]> ALTER TABLE table_name ADD COLUMN column_name;

データベーステーブルの列を削除するには、次を実装します。

MariaDB [(none)]> ALTER TABLE table_name DROP COLUMN column_name;

データベーステーブルに主キーが必要な場合は、次のコマンドで主キーを含めることができます:

MariaDB [(none)]> ALTER TABLE table_name ADD PRIMARY KEY (column_name);

データベーステーブルに割り当てられた主キーを削除するには、次のコマンドを実行します。

MariaDB [(none)]> ALTER TABLE table_name DROP PRIMARY KEY;

特定のデータベーステーブルに関連付けられている列を表示するには、次のコマンドを実行します。

MariaDB [(none)]> DESCRIBE table_name;

特定の列情報を表示するには、次を実行します:

MariaDB [(none)]> DESCRIBE table_name table_column;

MySQLデータベースデータのクエリ

データベースの下にあるさまざまなテーブルを特定したら、いくつかの興味深いクエリを実行できます。

特定のデータベーステーブルに関連付けられているすべてのデータをクエリするには、次のコマンドを実行します。

MariaDB [(none)]> SELECT * FROM table_name;

1つ以上のテーブル列データをクエリするには、次を実行します。

MariaDB [(none)]> SELECT column_name1, column_name2, column_name3 FROM table_name;

データベーステーブルクエリに重複する行がある場合は、次のコマンドでそれらを除外できます:

MariaDB [(none)]> SELECT DISTINCT COLUMN FROM table_name;

新しいデータベーステーブルレコードを挿入するには:

MariaDB [(none)]> INSERT INTO table_name(column_list) VALUES(value_list); 

既存のデータベーステーブルレコードを更新するには:

MariaDB [(none)]> Update table_name SET column1=value1;
を更新します

データベースのバックアップと復元

ここでは、 mysqldumpの使用を確認する必要があります コマンドラインクライアントプログラム。最初のステップは、バックアップまたは復元するデータベースとデータベーステーブルを特定することです。

MariaDB [(none)]> show databases;
MariaDB [(none)]> show tables;

単一のMySQLデータベースをバックアップするには、次の構文を参照してください。

$ sudo mysqldump -u [db_username] -p[db_password] [database_name] > [generated_db_backup.sql]

上記のコマンド構文の実装は次のようになります。

$ sudo mysqldump -u root -pid@pa55word demodb > demodb.sql

複数のデータベースを扱っている場合、コマンドは次のようになります。

$ sudo mysqldump -u root -pid@pa55word --databases demodb mysql > demodb_mysql.sql

すべてのMySQLデータベースをバックアップするには:

$ sudo mysqldump -u root -pid@pa55word --all-databases > all_databases.sql

タスクと呼ばれる単一のデータベーステーブルをバックアップするには :

$ sudo mysqldump -u root -pid@pa55word demodb tasks > demodb_tasks.sql

複数のデータベーステーブルをバックアップするには(ユーザー およびホスト ):

$ sudo mysqldump -u root -pid@pa55word mysql user host > mysql_user+host.sql

MySQLデータベースまたはデータベーステーブルを復元するには、 mysqlを使用します mysqldumpの代わりにコマンド コマンドを実行して>を切り替えます <の記号 シンボル。

たとえば、 demodbと呼ばれる単一のMySQLデータベースを復元するには 、コマンドを実装します:

$ sudo mysql -u root -pid@pa55word demodb < demodb.sql 

データベースデータをリモートサーバーからローカルマシンにバックアップするには、MySQLをホストしているリモートサーバーのIPアドレスを知っている必要があります。たとえば、リモートサーバー上の単一のデータベースをローカルにバックアップするには、実装するコマンドは次のようになります。

$ sudo mysqldump -h 192.168.84.130 -u remote_user -p dbdemo > dbdemo.sql  

バックアッププロセスを開始するためのデータベースユーザーパスワードの入力を求められます。 MySQLサーバーへのリモートアクセスを許可していることを確認してください。

いくつかの便利なMySQL 読むべき関連記事:

  • MySQLデータベースサーバーへのリモートアクセスを許可する方法
  • LinuxでMySQLユーザーアカウントのリストを取得する方法
  • LinuxでMySQLデータベースをインポートおよびエクスポートする方法
  • GRANT権限を持つ新しいMySQLユーザーを追加する方法
  • コマンドラインからすべてのMySQLデータベースをバックアップする方法

この短い記事では、必要な MySQLを快適に実装する必要があります。 データベース駆動型プロジェクトを継続するためのコマンド。


Linux
  1. Linuxで印刷するための3つのヒント

  2. 効果的なプロセス管理のための8つのLinuxコマンド

  3. ネットワーク診断用の10のLinuxコマンド

  1. 生産性のための3つの重要なLinuxチートシート

  2. LinuxにMariaDBまたはMySQLをインストールする

  3. IPtablesコマンドのチートシート

  1. Linuxユーザーと権限のチートシート

  2. 一般的なLinuxコマンドのチートシート

  3. SELinux用のシステム管理者の便利なチートシート