HUAWEI CLOUD クラウドサーバー評価|Docker環境にMysqlデータベースを導入

I.はじめに

1.1 Yunyao Cloud Server L インスタンスの概要

Yunyao クラウド サーバー L インスタンスは、中小企業や開発者向けに特別に設計された新世代の軽量アプリケーション クラウド サーバーで、すぐに使える利便性を提供します。Yunyao クラウド サーバー L インスタンスは、ワンクリックでアプリケーションをデプロイできる、厳選された豊富なアプリケーション イメージを提供します。これにより、顧客が電子商取引 Web サイト、Web アプリケーション、小規模プログラム、学習環境、およびさまざまな開発およびテスト タスクを構築するプロセスが大幅に簡素化されます。クラウドのプロセスで。

ここに画像の説明を挿入

1.2 MySQL データベースの概要

MySQL は、言語として SQL (構造化照会言語) を使用するオープンソースのリレーショナル データベース管理システム (RDBMS) であり、ユーザーは SQL ステートメントを通じてデータを操作および管理できます。MySQL はスウェーデンの MySQL AB によって開発され、現在は Oracle Corporation の製品です。MySQL は、最も人気のあるオープンソースのリレーショナル データベース管理システムの 1 つであり、Web アプリケーションの開発で広く使用されています。MySQL は、高速、高セキュリティ、簡単な使用と管理、および優れたスケーラビリティを特徴としています。MySQL は、Linux、Windows、Mac OS など、さまざまなオペレーティング システムをサポートしています。現在の最新の安定バージョンは MySQL 8.0 です。

2. この実践の概要

2.1 この実践の概要

1. この演習は個人的なテストおよび学習環境であり、アプリケーションを迅速にデプロイすることを目的としています。本番環境では注意してください; 2.
この演習環境は Yunyao Cloud Server L インスタンスであり、使用されるアプリケーション イメージは Porttainer 2.18.4 です。
3. Porttainer で MySQL データベースをプラットフォームにデプロイします。

2.2 この環境計画について

サーバークラス アプリケーションイメージ イントラネットIPアドレス Docker のバージョン ポーターバージョン MySQLのバージョン
Yunyao クラウド サーバー L インスタンス Docker ビジュアルポータ​​ー 192.168.0.168 24.0.4 2.18.4 8.0

3. Yunyao Cloud Server L インスタンスを購入する

3.1 HUAWEI CLOUDにログインする

個人の HUAWEI CLOUD アカウントにログインし、検索バーに Yunyao Cloud Server L インスタンスと入力し、Enter キーを押して確認し、Yunyao Cloud Server L インスタンスの詳細ページに入ります。

ここに画像の説明を挿入
ここに画像の説明を挿入

ここに画像の説明を挿入

3.2 Yunyao Cloud Server L インスタンスを購入する

Yunyao Cloud Server L インスタンスの詳細ページで、「購入」をクリックします。

ここに画像の説明を挿入

地域: 中国北部—北京 4;
アプリケーション イメージ: Docker Visualization-Porttainer;
インスタンスの仕様: 2 コア 2G/システム ディスク 40G/ピーク帯域幅 3Mbps/トラフィック パッケージ 400G;
インスタンス名: カスタマイズ可能で、ここで HECS-L として編集できます-ポーター ;
購入期間: 1 か月;

ここに画像の説明を挿入

ここに画像の説明を挿入

  • 構成を確認し、購入を確認します。

ここに画像の説明を挿入

3.3 Yunyao Cloud Server L インスタンスのステータスの表示

購入した Yunyao Cloud Server L インスタンスのステータスが正常に動作していることを確認します。

ここに画像の説明を挿入

3.4 サーバーパスワードのリセット

クリックして Yunyao Cloud Server L インスタンスにリモートでログインします

ここに画像の説明を挿入

ここに画像の説明を挿入

パスワードをリセットするには、右側のパスワードをリセットするオプションをクリックすると、本人確認が必要になります。携帯電話認証を選択すると、パスワードが正常にリセットされます。

ここに画像の説明を挿入

ここに画像の説明を挿入

4. Docker環境を確認する

4.1 Elastic パブリック IP アドレスを確認する

  • Elastic パブリック IP アドレスをコピーし、サーバーにリモート接続するときに使用します。

ここに画像の説明を挿入

4.2 Xshell がサーバーに接続する

Xshell ツールで、サーバーの Elastic Public Network IP アドレス、アカウント、パスワード情報を入力し、ssh を使用してリモート サーバーに接続します。

ここに画像の説明を挿入

ここに画像の説明を挿入

ここに画像の説明を挿入

4.3 Dockerサービスのステータスを確認する

Yunyao Cloud Server L インスタンスが使用するアプリケーションイメージは Porttainer であるため、Docker 環境は自動的にデプロイされており、Docker 環境を再構築する必要はありません。

  • Dockerのバージョンを確認する
root@hcss-ecs-f91c:~# docker -v
Docker version 24.0.4, build 3713ee1
  • Dockerサービスのステータスを確認する
root@hcss-ecs-f91c:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2023-09-05 21:51:04 CST; 16h ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 1061 (dockerd)
      Tasks: 88
     Memory: 519.8M
        CPU: 1min 956ms
     CGroup: /system.slice/docker.service

4.mysql:8.0イメージをダウンロードします。

docker Hub から mysql:8.0 イメージをプルします。

root@hcss-ecs-f91c:~# docker pull  mysql:8.0
8.0: Pulling from library/mysql
b193354265ba: Pull complete
14a15c0bb358: Pull complete
02da291ad1e4: Pull complete
9a89a1d664ee: Pull complete
a24ae6513051: Pull complete
5110d0b8df84: Pull complete
71def905d921: Pull complete
c29c4f8eb3c1: Pull complete
769af171cdaa: Pull complete
c1a0ba6abbff: Pull complete
5e7e1ae11403: Pull complete
Digest: sha256:f0e71f077bb27fe17b1b9551f75d1b35ad4dfe3a33c82412acf19684790f3a30
Status: Downloaded newer image for mysql:8.0
docker.io/library/mysql:8.0

5. MySQL アプリケーションをデプロイする

5.1 MySQLコンテナの作成

docker-cli コマンドを使用して、mysql コンテナを作成します。

docker run -d --name mysql_01 --restart always -v /data/mysql/:/var/lib/mysql -p 3641:3306 -e MYSQL_ROOT_PASSWORD=admin -e MYSQL_DATABASE=data mysql:8.0

ここに画像の説明を挿入

5.2 Mysqlコンテナのステータスを確認する

mysql コンテナのステータスをチェックして、コンテナが正常に起動していることを確認します。

root@hcss-ecs-f91c:~# docker ps
CONTAINER ID   IMAGE                           COMMAND                  CREATED          STATUS          PORTS                     NAMES
c5962b2ee9f3   mysql:8.0                       "docker-entrypoint.s…"   12 minutes ago   Up 12 minutes   33060/tcp, 0.0.0.0:3641->3306/tcp, :::3641->3306/tcp                     mysql_01

5.3 コンテナの動作ログを確認する

mysqlコンテナの実行ログを確認してください。

ここに画像の説明を挿入

6. Mysql データベースにローカルでログインします。

6.1 mysqlコンテナに入る

mysqlコンテナに入ります

docker exec -it mysql_01 /bin/bash

6.2 ローカルにログインして mysql に接続する

ローカルにログインして mysql データベースに接続します

bash-4.4# mysql -uroot -padmin
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.34 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

6.3 ユーザー名とパスワードを設定する

  • 新しい利用者
create user 'admin'@'%' identified WITH mysql_native_password BY 'admin';
  • ユーザー権限を設定する
grant all on *.* to  'admin'@'%'    with GRANT OPTION;
flush privileges;

ここに画像の説明を挿入

7、リモートログインMysqlデータベース

7.1 セキュリティグループポートを許可する

Yunyao Cloud Server L インスタンスのセキュリティ グループ構成管理で、受信方向のポート 3641 を許可します。

ここに画像の説明を挿入
ここに画像の説明を挿入

7.2 mysql データベースへのリモート接続

他の Linux サーバーの mysql クライアント上の mysql データベースにリモート接続します。ここで、-h の後に Yunyaoyun サーバー L インスタンスのエラスティック パブリック ネットワーク IP アドレスが続きます。

[root@server ~]# mysql -hxxxx -P 3641 -uadmin -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 8.0.34 MySQL Community Server - GPL

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

ここに画像の説明を挿入

7.3 データの書き込み

  • データベースを作成する
create database school;
  • 新しいデータベースを表示する
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| data               |
| information_schema |
| mysql              |
| performance_schema |
| school             |
| sys                |
+--------------------+
6 rows in set (0.00 sec)
  • 学校データベースに入る
mysql> use school;
Database changed
  • 新しいデータ テーブルを作成し、空のデータ テーブルを作成します。
 CREATE TABLE IF NOT EXISTS `student`(
     `id` INT UNSIGNED AUTO_INCREMENT,
      `name` VARCHAR(100) NOT NULL,
    `gender` TINYINT NOT NULL,
     `age` INT UNSIGNED,
    `class` INT UNSIGNED,
      `score` INT UNSIGNED,
      PRIMARY KEY ( `id` )
    )ENGINE=InnoDB DEFAULT CHARSET=utf8;

ここに画像の説明を挿入

  • データをデータテーブルに書き込みます。
 insert into student ( name, gender, age, class,  score ) values ( "李一成", "1", "16", "1", "78" );
 insert into student ( name, gender, age, class,  score ) values ( "王萌", "0", "15", "2", "88" );
 insert into student ( name, gender, age, class,  score ) values ( "张磊", "1", "16", "4", "98" );

ここに画像の説明を挿入

  • クエリデータテーブルの内容
mysql> select * from student;
+----+-----------+--------+------+-------+-------+
| id | name      | gender | age  | class | score |
+----+-----------+--------+------+-------+-------+
|  1 | 李一成    |      1 |   16 |     1 |    78 |
|  2 | 王萌      |      0 |   15 |     2 |    88 |
|  3 | 张磊      |      1 |   16 |     4 |    98 |
+----+-----------+--------+------+-------+-------+
3 rows in set (0.03 sec)

7.4 phpMyAdminツールのリモート接続データベース

phpMyAdmin ツールを使用してデータベースにリモート接続すると、通常どおりデータ テーブルの内容をクエリできます。

ここに画像の説明を挿入
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/jks212454/article/details/132713649