Skip to main content

19 posts tagged with "MySQL"

View All Tags

Django: CentOS上でのmysqlclientインストールエラーの解決法

· 5 min read
Yu Sasaki
Enterprise Security Manager / Advisor

開発環境(Mac)ではインストールできたmysqlclientだが、いざ本番のCentOSサーバへDjangoアプリをデプロイの上、pip install -r requirements.txt でライブラリのインストールを試みたところ、依存ライブラリ・パッケージが不足しており下記のエラーが発生。インストール異常終了した為、解決法を後述に記載する。

Django: macOSでのpip install mysqlclient エラーの解決法

· 6 min read
Yu Sasaki
Enterprise Security Manager / Advisor

表題の通り、macOS上でmysqlclientのインストールを試みたところ下記のエラーが発生。本記事はその解決法を記載するもの。

追記(2019-12-28): macOS Catelinaアップグレード後に事象が再発した為、対処法を下記リンク先に追記しました。 Python: macOS (Catalina)でのpip install mysqlclient エラーの解決法

Docker: run linkオプションによるmysqlコンテナ間のリンク

· 8 min read
Yu Sasaki
Enterprise Security Manager / Advisor

例えば、Webアプリケーションを作成する際のDocker構成の一例としてデータベース(DB)機能のみのコンテナを起動し、WebアプリコンテナからDBコンテナにアクセスする際の方法として、ホストネットワークIPへバインディングせずに、docker runサブコマンドのlinkオプションを活用する方法がある。本記事は公式mysqlサーバコンテナを作成しlinkオプションで起動したコンテナからサーバへ接続する手法を紹介する。尚、参考にした公式ドキュメントリンクは記事末尾を参照すること。また、使用docker engine versionは1.9.1。

PHP: phpMyAdminのアップグレード・インストール

· 2 min read
Yu Sasaki
Enterprise Security Manager / Advisor

前記事に続き(単にしばらくほったらかしのOSSが多かっただけに過ぎないが)、phpmyadminもしばらくアップデートしていなかったのでこの際実施した。 まず、最新版を以下のサイトよりダウンロード。 phpMyAdmin 続いて既存のphpmyadminディレクトリをリネームの上、新バージョンへ移行していく。

# cd /var/www
# ls
cgi-bin error html icons phpMyAdmin-4.0.5-all-languages.tar.gz phpmyadmin
# mv phpmyadmin/ _phpmyadmin/ ← 旧versionのディレクトリをリネーム
# tar xzvf phpMyAdmin-4.0.5-all-languages.tar.gz
# mv phpMyAdmin-4.0.5-all-languages phpmyadmin
# cp phpmyadmin/config.sample.inc.php phpmyadmin/config.inc.php
# chmod 660 phpmyadmin/config.inc.php
# mkpasswd -l 46
# vi phpmyadmin/config.inc.php ← 修正内容は後述
# chown -R apache.apache phpmyadmin/

因みに、最近のバージョンのLanguagesの設定は過去とは少々変わったようだ。危うくlocale -aのja_JP.UTF-8を盲目的にセットするところだった。 Configuration — phpMyAdmin 4.0.5 documentation

# ls phpmyadmin/locale/
ar bn cs de en_GB et fr hi hu it ko nb pl pt_BR ru sk sr@latin th uk uz@latin zh_TW
bg ca da el es fi gl hr id ja lt nl pt ro si sl sv tr uz zh_CN

その為、config.inc.phpファイル内の修正箇所は以下の通り。

$cfg['blowfish_secret'] = '<mkpasswdコマンド結果を挿入>'
$cfg['DefaultLang'] = 'ja';

ここで、実際にブラウザからログイン後、日本語UIが確認できればOK。最後にゴミ掃除をすれば完了。拡張機能の無効の警告については今設定ではスコープ外なので割愛。最後に以下の通りゴミ掃除すれば完了。

# rm -f phpMyAdmin-4.0.5-all-languages.tar.gz
# rm -fr _phpmyadmin/

新バージョンのUIは中々洗練されていてよい。何でも新しい方が良いもんだね。

Linux: PHP, MySQLのyum update - Remiレポジトリ

· 4 min read
Yu Sasaki
Enterprise Security Manager / Advisor

CentOSを使用しているがデフォルトのyumリポジトリだとPHP, MySQLのバージョンが古いので、これまでサードパーティーのリポジトリ、Remiを用いていた。当記事はRemiリポジトリを用いてのyum updateの覚え書きとなる。Remiのインストールや設定、PHP, MySQLのインストール、設定は割愛する。

Mac OS へMySQLをインストールする方法

· 3 min read
Yu Sasaki
Enterprise Security Manager / Advisor

MAMP付属のMySQLではなくMac OSに直にMySQLをインストールする場合の手順を以下にまとめておく。

ダウンロードするもの

以下のサイトよりMySQLをダウンロードする。ダウンロード時にはアカウントの登録を求められるが特に費用は掛からない。 MySQL :: Download MySQL Community Server 私の環境はMBA 64bitである為、<Mac OS X ver. XX.X (x86, 64-bit), DMG Archive>ファイルをダウンロードした。

AIR: SQLiteでデータの挿入と検索 - SQLConnection、SQLStatementクラス

· 3 min read
Yu Sasaki
Enterprise Security Manager / Advisor

AIRアプリケーションからSQLiteのDBにアクセスするには主にSQLConnectionとSQLStatementクラスを用います。基本的な処理の流れは、

  1. SQLConnection#openAsync(<Fileオブジェクト>, <モード>)でDBに接続
  2. SQLStatement#textプロパティにSQL文を代入しexecute()で実行
  3. その際、フィールド値はSQLStatement#parameters["@<定義されたパラメータ>"]で代入する
  4. SELECT文の検索結果データははSQLStatement#getResult()で取得
  5. 結果データの型はSQLResultで、データそのものはdataプロパティ(Array型)に入っている。e.g. <SQLResult>.data[i].<フィールド名>

下のプログラムはDBに接続してテーブルの作成、レコードの追加、検索を行うサンプルです。

MySQL: 同じ値のフィールドをグルーピング - GROUP BY句

· 4 min read
Yu Sasaki
Enterprise Security Manager / Advisor

前回はソートした検索結果を出力しましたね。今回は、フィールドの値が同じレコードをグルーピングし、そのレコード集の任意のカラムに対してAVG(),MIN(),MAX(),COUNT(),SUM()...などの関数計算を適応してみます。使用するレコードは以下のものを用います。