20210607のMySQLに関する記事は4件です。

【Docker-compose】コンテナ起動時にport is already allocatedエラーが発生したときの対処方法

Laravelのwebアプリを作成するために、Docker-composeで環境構築してコンテナを起動したところMySQLの立ち上げでエラーが発生しました。 自分用の記録としてエラーの解消方法をメモします。 開発環境 docker-compose version'3' MySQL '5.7' やりたいこと Docker-composeで環境構築してLaravelのアプリを作成したい。 ということでdocker-compose.ymlを以下の通り編集して、docker-compose upコマンドを叩いた。 version: '3' services: web: image: nginx:1.15.6 ports: - '8000:80' depends_on: - app volumes: - ./docker/web/default.conf:/etc/nginx/conf.d/default.conf - .:/var/www/html app: build: ./docker/php volumes: - .:/var/www/html depends_on: - mysql mysql: platform: linux/x86_64 image: mysql:5.7 environment: MYSQL_DATABASE: memo_app MYSQL_USER: user MYSQL_PASSWORD: password MYSQL_ROOT_PASSWORD: password ports: - "3306:3306" volumes: - mysql-data:/var/lib/mysql volumes: mysql-data: エラー内容 Bind for 0.0.0.0:3306 failed: port is already allocated エラー文によると、3306番ポートが既に割り当てられているので、MySQLが起動できずエラーが発生してしまったらしい。 他のアプリでもDocker-composeとMySQLでアプリを作成していたので、そのコンテナが原因か。 対処方法 まずは次のコマンドで現在起動中のコンテナを確認。 ターミナル docker ps 起動中のコンテナの中から、3306番ポートを使用しているコンテナを停止する。 ターミナル docker stop (対象のCONTAINER ID) これで無事にdocker-compose upできました!!
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【Rails】簡単にRDSを使いたい

環境 ホスト:MacOS ゲスト:CentOS6 Vagrant MySQL Problem https://qiita.com/Alice_ecilA/items/54b4624f0126c7eec5e5 ↑こちらの続きです。 vagrantをコピーしたので、アプリケーション側とRDS側にしていきます。 Solve アプリケーションサーバ config/database.yml development: <<: *default database: my_database username: apps password: this_is_password host: 192.168.33.11 アプリケーション側はdatabase.ymlにRDSの接続情報を追加してあげればOK。 RDS用 mysql -u root [-p] #パスワードがある場合-p -- アプリケーションサーバからの接続を許可する mysql> GRANT all ON *.* TO apps@'192.168.33.22' IDENTIFIED BY 'this_is_password'; mysql> FLUSH PRIVILEGES; -- 先程のIPが登録されていれば接続できる状態 mysql> SELECT user,host FROM mysql.user; +------------------+---------------+ | user | host | +------------------+---------------+ | apps | 192.168.33.22 | | apps | localhost | | root | localhost | +------------------+---------------+ RDS側はmysqlに入り、アプリケーションサーバのIPアドレスを登録して接続を許可すればOK。 まとめ これでアプリケーションとRDSの通信ができるようになりました。 外部のDBを使いたい場合はこれが応用できると思います。 もしうまく行かないのであれば、RDS側のOSで外部との通信を許可しているか?(Firewall) MySQLサーバの設定ファイル(mysqld.cnf)でIPアドレスの制限を解除しているか?確認してみましょう。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

プロジェクト演習 webサーバ側 (環境構築)

インストール php pi@raspberry:~ $ sudo apt install php php php-cli php-curl pi@raspberry:~ $ sudo a2enmod userdir pi@raspberry:~ $ sudo systemctl restart apache2 MariaDB pi@raspberry:~ $ sudo apt-get install mariadb-server-10.0 python pi@raspberry:~ $ pip install mysql-connector-python pi@raspberry:~ $ pip install mysqlclient ソースコード pi@raspberry:~ $ cd /var/www/html pi@raspberry:/var/www/html $ git clone https://github.com/kawanishi291/proen pi@raspberry:/var/www/html $ cd ~ pi@raspberry:~ $ git clone https://github.com/kawanishi291/proen2021 初回準備 pi@raspberry:~ $ cd ./proen2021 pi@raspberry:~/proen2021 $ chmod 777 setup.sh pi@raspberry:~/proen2021 $ ./setup.sh 実行 pi@raspberry:~/proen2021 $ ./RS232C_raspberry_pi
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

プロジェクト型演習 webサーバ側 (環境構築)

準備 Pythonのバージョン変更 RaspberryPiのPythonのデフォルトは2系なので、シンボリックを3系に変更 pi@raspberrypi:~ $ python --version Python 2.7.16 pi@raspberrypi:~ $ cd /usr/bin pi@raspberrypi:/usr/bin $ sudo unlink python pi@raspberrypi:/usr/bin $ sudo ln -s python3 python pi@raspberrypi:/usr/bin $ cd ~ pi@raspberrypi:~ $ python --version Python 3.7.3 Gmailの設定変更 自分のGoogleアカウント管理画面を開く セキュリティを選択する 安全性の低いアプリのアクセスを有効にする インストール php pi@raspberry:~ $ sudo apt install php php php-cli php-curl pi@raspberry:~ $ sudo a2enmod userdir pi@raspberry:~ $ sudo systemctl restart apache2 MariaDB pi@raspberry:~ $ sudo apt-get install mariadb-server-10.0 python pi@raspberry:~ $ pip install mysql-connector-python pi@raspberry:~ $ pip install mysqlclient ソースコード 全ソースはGitHubのリポジトリにアップしているのでcloneする pi@raspberry:~ $ cd /var/www/html pi@raspberry:/var/www/html $ git clone https://github.com/kawanishi291/proen pi@raspberry:/var/www/html $ cd ~ pi@raspberry:~ $ git clone https://github.com/kawanishi291/proen2021 初回準備 DBのユーザ登録やテーブル作成、初期データインサートなどを行うシェルスクリプトを実行 pi@raspberry:~ $ cd ./proen2021 pi@raspberry:~/proen2021 $ chmod 777 setup.sh pi@raspberry:~/proen2021 $ ./setup.sh Enter password: raspberry 初期セットアップ実行開始 DBユーザ作成完了 DBテーブル作成完了 テキストファイル作成完了 ファイル権限変更完了 Cコンパイル完了 mail送信設定完了 送信元アドレス: 自分のgmailアドレス 送信先アドレス: 送信したい相手のgmailアドレス パスワード: 自分のGoogleアカウントのパスワード この画面表示ならおけ。 TOPページの確認 実行 RaspberryPi側 pi@raspberry:~/proen2021 $ ./RS232C_raspberry_pi fb = 3 em board側 rs232c.mtpjをCS+で実行 結果 pi@raspberry:~/proen2021 $ ./RS232C_raspberry_pi fb = 3 s 0 0 2 , 0 1 3 , 0 3 3 , 0 0 8 , 0 1 0 True DBインサート処理完了 mail送信処理完了 現在の日付時刻のデータが増え、送信先のアドレスにメールが届いていれば成功 TOPページの確認 カレンダーページの確認 グラフページの確認 送信先の受信メールを確認 参考 Raspberry Pi Python3系に変更する方法 RaspberryPiで自動同報メール発送機をつくるよ!
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む