ホームページ  >  記事  >  データベース  >  Dockerにmysqlサービスをデプロイする方法は何ですか

Dockerにmysqlサービスをデプロイする方法は何ですか

WBOY
WBOY転載
2023-05-26 22:56:041353ブラウズ

ステップ 0: Docker Hub から公式の mysql イメージをプルする

docker pull mysql

その後、もちろん長い待ち時間が発生します。イメージ アクセラレータを構成すると、速度が大幅に速くなります

#ステップ 1: docker image コマンドを使用してイメージを表示します

Dockerにmysqlサービスをデプロイする方法は何ですか

ここにすでに mysql イメージがあることがわかります

ステップ 2: mysql イメージを開始し、mysql コンテナを作成します

コマンドを使用します : docker run -d --name mysql -p 3307:3306 -e mysql_root_password=123456 mysql

ここでパラメータについて説明します:

-d はバックグラウンドで実行することを意味し、終了しません現在のコマンド ライン ウィンドウを終了します。

--name はコンテナにエイリアスを与えます。このコンテナは将来、このエイリアスを通じて管理できます。

-p 3307: 3307ホストの 3307 ポート mysql コンテナの 3306 ポートにマッピング

-e mysql コンテナの環境設定

mysql_root_password=123456 mysql のパスワードを指定します。名前のデフォルトは root です。パスワードが指定されていない場合、起動は失敗することに注意してください。

ステップ 3: 開始した mysql コンテナを表示します。

次のコマンドを使用します。 docker ps

Dockerにmysqlサービスをデプロイする方法は何ですか

ご覧のとおり、mysql コンテナはすでに実行されています。Dockeer は、管理に便利なコンテナ番号を mysql コンテナに割り当て、また、私たちが設定したポート マッピング

この時点で、一部の兄弟は、mysql コンテナは順調に実行されているのに、あなたはポートしか教えてくれなかったと思うかもしれません。どうやってその IP を知ることができるのでしょうか? 私はあなたを信じます。老人はとても親切です。悪い。 ######ダメダメダメ。 docker Inspection -f ='{{ を使用できます。 networksettings.ipaddress}}'5fef288f221f コマンドを使用して、コンテナの IP アドレスを確認します。最後に、確認したいコンテナの ID を書き込むだけです。インターネット上の人々は非常に悪質で、 あなたにとっては、とても落ち込むことになるので、私の言うことが絶対に正しいということに従ってください

もう 1 つ注意すべき点は、リモート管理のために mysql コンテナを外部に接続したい場合は、ホストを設定する必要があるということです。コンテナ内の mysql の root アカウントを変更し、ワイルドカード % を使用すると、任意のホストが mysql に接続できるようになります。具体的な方法は次のとおりです:

mysql コンテナに入ります: docker exec コマンドを使用します。 -これはパラメータです。bash は対話型インターフェイスを作成することを意味します

Dockerにmysqlサービスをデプロイする方法は何ですかmysql サーバーにログイン: root ユーザーを使用して mysql にログインします。パスワードを入力した後、 mysql

Dockerにmysqlサービスをデプロイする方法は何ですか と入力したことがわかります。show database; コマンドを使用してデータベースを表示します (最後のセミコロンを忘れないように注意してください。すべての mysql コマンドにはセミコロンが必要です)。

Dockerにmysqlサービスをデプロイする方法は何ですかデータベースが List it out であることがわかり、mysql; コマンドを使用して mysql データベースに入ります (畳み込みではありませんか、ははは、mysqlここでのデータベースはこのデータベースを指します、わかりました、まだ明確になっていないかもしれません)

次に、show tables; コマンドを使用してすべてのテーブルをリストします

#多くのテーブルがあることがわかります。これらはすべて mysql 設定です。それらに注意を払う必要はありません。ユーザー テーブルを変更する必要があるだけです。Dockerにmysqlサービスをデプロイする方法は何ですか

SQL コマンドを使用します:

update user set host ='%'where user ='root';

一部の学生はこのコマンドを使用する可能性があります。mysql には複数の root ユーザーが存在する可能性があるため、エラーが報告されます。そのため、次のコマンドを使用します。

update user set host ='%'其中user ='root'和host ='localhost';

上記の手順を設定した後、接続をテストできます。接続できれば、おめでとうございます。とても幸運です。

ダウンロードした mysql イメージは mysql8 であるため、接続できない場合はおめでとうございます。

次のエラーが発生する可能性があります

この時点で、構成は完了です。 exit; コマンドを使用して終了します。

リモート接続をテストする

Dockerにmysqlサービスをデプロイする方法は何ですかステップ 4: mysql コンテナにデータをインポートします

mysql を使用しますが、コンテナーは実行されていますが、その中にデータはありません。次の方法で docker の mysql にデータベースをインポートできます。

最初にファイルをコンテナーにインポートし、次に cp はインポートする SQL です。 .ファイルパス

#docker cp **.sql mysql:/root/
进入容器
#docker exec -it mysql bash
将文件导入数据库
# mysql -uroot -p 【数据库名】 < ***.sql

mysql -h localhost -u root -p(进入mysql下面)
create database abc;(创建数据库)
show databases;(就可看到所有已经存在的数据库,以及刚刚创建的数据库abc)
use abc;(进入abc数据库下面)
show tables;(产看abc数据库下面的所有表,空的)
source /var/test.sql(导入数据库表)
show tables;(查看abc数据库下面的所有表,就可以看到表了)
desc pollution;(查看表结构设计)
select * from pollution;
exit(或者ctrl + c)退出mysql

以上がDockerにmysqlサービスをデプロイする方法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。