読者です 読者をやめる 読者になる 読者になる

約束の地

あの日あの時のキャロの想い出

Ubuntu 16.04 LTS の nginx で PHP を使えるようにする

最低限 ごちゃごちゃ書くと論点を見失うのでシンプルに書きます。 インストール nginx と php-fpm を入れます。 $ sudo apt-get install nginx $ sudo apt-get install php-fpm nginx の設定ファイルの編集 場所は/etc/nginx/sites-available/defaultです。…

Docker の中の Apache で PHP の shell_exec() すると実行できるときとできないときがある

Webブラウザから PHP の exec 系統のコマンドを実行する ある程度のセキュリティはちゃんと意識した上で、シェルスクリプトを Webブラウザ 上から叩くときなどに便利です。 Docker 上だと が、Docker 上の Apache(PHP)だと「実行できたりできなかったり」…

Ubuntu 16.04 LTS に MongoDB をインストールする

MongoDB のインストール 素の状態でapt-get install mongodbでインストールすると現状2.6.10がインストールされます。3.X.Xを入れたいですね。

Ubuntu 16.04 LTS で MongoDB の認証を有効にする方法

MongoDB まずはインストールしましょう。 認証ユーザの追加 db.addUser()はdeprecatedです。ダメです。db.createUser()を使いましょう。roleとかdbとかは適切なものを。 > use admin > db.createUser( { user: "username", pwd: "password", roles: [{ role:…

Embulk で MySQL に大量のデータを流し込む際にエラーが出る場合

Embulk 今さら説明の必要はないと思いますが、データをいい感じに流してくプロダクトです。 MySQL に大量のデータを流し込み この Embulk で 100万件 規模の大量のデータを MySQL に流し込もうとすると以下のようなエラーが出てしまいました。 The total num…

embulk-input-mysql の incremental_columns の設定でハマった

embulk-input-mysql ご存知、Embulk 用の MySQL の input プラグインです。 incremental と incremental_columns 設定項目の一つにincrementalという項目があり、ここをtrueにするとこの項目で指定されたカラムを基準として最終取得したレコードの情報を保存…

Ubuntu 16.04 LTS の MySQL で STRICT_TRANS_TABLES を無効にする方法

STRICT_TRANS_TABLES MySQL には設定項目にSTRICT_TRANS_TABLESという項目があります。これを無効にする方法です。 結論 /etc/mysql/mysql.conf.d/mysqld.cnfに以下のように書きます*1。必要に応じて内容は調整しましょう。 # STRICT_TRANS_TABLES を除外 sq…

Embulk で MySQL のプラグインを入れる方法

Embulk に MySQL の Plugin を入れる 情けないハマり方をしたので反省文。 失敗したコマンド $ embulk gem install mysql 成功したコマンド $ embulk gem install embulk-input-mysql $ embulk gem install embulk-output-mysql 結論 自分が情けない。

Amazon.co.jp で二段階認証の導入が開始

Amazon.co.jp での二段階認証 北米ではすでにあったらしいのですが、ようやく日本の Amazon でも二段階認証が導入されました。 二段階認証の設定方法 二段階認証を有効にするには以下の手順を踏みます。

MySQL で改行を検索する方法

結論 CHAR(13)です。文字列として連結して使用する場合はCONCATを使いましょう。 例 SELECT * FROM table_name WHERE column_name LIKE CONCAT('%', CHAR(13), '%') ;

MySQL で Lost connection to MySQL server during query エラーが出た場合

Lost connection to MySQL server during query MySQL でクエリを発行した際に、Lost connection to MySQL server during queryというエラーメッセージが出ることがあります。これは事実を表しただけのメッセージであり、どうすればエラーが出なくなるのかが…

Ubuntu 16.04 LTS での MeCab の辞書の場所と確認

結論 辞書の場所 ここです。 /var/lib/mecab/dic 実は以下の設定ファイルに書いてあります。これは Mroonga などでも使われます。 /etc/mecabrc 辞書の確認 以下を。 $ sudo update-alternatives --config mecab-dictionary MeCab のバージョン(補足) 0.99…

Idiorm のインストール方法

Idiorm Idiorm をインストールする方法です。 Composer で これでいいでしょう。 $ composer require j4mie/idiorm 書いた動機 ずばり上記のコマンドがドキュメント内に見当たらなかった*1。 *1:見落としているだけかも

Goutte(グート)でスクレイピングをする準備

Goutte PHP のスクレイピング用ライブラリであるGoutte(「グート」と読むらしい*1)を使うための準備の方法です。実際の使い方はオフィシャルのドキュメントを見るほうが早いでしょう。 php-curl と php-xml を入れる 以下、Ubuntu 16.04 LTS を用いた場合…

Embulk で Operation failed (0:08003) エラーが出た場合は out のサイズを見直してみる

Embulk でインターネット越しの転送 ローカルネットワークでは問題なかったのですが、インターネット越しに Embulk で大量のデータを送信しようとするとOperation failed (0:08003)というエラーが出てしまいました。Output pluginsはembulk-output-mysql(ht…

Embulk でレジューム(差分実行)するためには実行時に -o オプションを付ける

Embulk ご存知Embulk(http://www.embulk.org/)ですが、Fluentd(http://www.fluentd.org/)とともにとても便利なプロダクトですよね。データベースの実質的なレプリケーションもこれで柔軟に行えたりします。プラグインにもよりますが、オプション指定も豊…

MySQL でテーブルを一括削除する方法

テーブルの一括削除 MySQL においてテーブルをDROP TABLEで削除する際にはワイルドカードを用いることができません。何とかしたいですね。 grepしてパイプでつなげる 以下のようにコマンドラインから投げてやれば、db_nameに存在する複数のテーブルを削除で…

Ubuntu 16.04 LTS で MySQL のスロークエリログを出力する方法

スロークエリログ 一定の条件を設定し、それを満たす(満たしてしまう)クエリに対してログを吐き出す設定です。パフォーマンス改善などに役立ちます。 設定ファイル 以下のファイルに追記します。 /etc/mysql/mysql.conf.d/mysqld.cnf 設定内容(設定項目)…

PostgreSQL でユーザを追加して権限を与える方法

概略 2段階の操作が必要 まずユーザ(ロール)を作成する その後に権限を付与する

MySQL でユーザを追加して権限を与える方法

概略 2段階の操作が必要 まずユーザを作成する その後に権限を付与する

Fluentd の tail Input Plugin で CSV ファイルを読み込む際は read_from_head を true にする

Fluentd で CSV ファイルを読み込む Fluentd を用いて CSV ファイルを読み込む際は、tail Input Plugin を用いるのが定石だと思います。formatでcsvが指定できますし。 待てど暮らせど出力してくれない しかしながら、以下のような感じで conf ファイルを書…

Ubuntu 16.04 LTS に PostgreSQL の最新版をインストールする

PostgreSQL の最新版をインストール デフォルトのリポジトリに対して公式リポジトリを追加して、apt-getでPostgreSQLの最新版をインストールします。 公式ページ やり方は以下のページに書いてあります。 PostgreSQL: Linux downloads (Ubuntu) 具体的方法(…

Ubuntu 16.04 LTS の MySQL にて外部のアドレスから接続する方法

結論 /etc/mysql/mysql.conf.d/mysqld.cnfのbind-addressの設定を変更して、MySQL を再起動しましょう。一番てっとり早いのはbind-addressをコメントアウトすることです。 補足 ユーザ単位での許可も忘れないようにしましょう。

fluent-plugin-postgres の key_names の設定でハマった話

fluent-plugin-postgres Fluentd の plugin にfluent-plugin-postgresという PostgreSQL 用の plugin があります。こいつの設定(conf ファイルでの記述)でハマった話です。 正常に動作しない記述 以下のような conf を書くと正しく動作しません。 <match mysql_replicator> @type p</match>…

Ubuntu 16.04 LTS にて MySQL の文字コードを utf8mb4 にする方法

設定ファイルを書き換える バージョン違いやディストリビューションの違いがあるので、改めて Ubuntu 16.04 LTS の場合をここに。 結論 2つのファイルを以下のようにして(書き加えて)、再起動する。 /etc/mysql/conf.d/mysql.cnf [mysql] default-characte…

「アライアンス・アライブ」の公式 Twitter にて、村山さんとの交渉の経緯がツイートされる

「アライアンス・アライブ」 2017/03/30 に発売が予定されている「アライアンス・アライブ」ですが、公式 Twitter にて注目すべき内容がツイートがされました。

Ubuntu 16.04 LTS に pg_bulkload をインストールする方法

pg_bulkload COPY コマンドより便利な pg_bulkloadですが*1、Ubuntu ですとコンパイルしなければなりません。 必要なものを入れていく コンパイルのためには以下をapt-getしましょう*2。postgresql-server-devは各自のバージョンに合わせて番号を変更してく…

MySQL から「改行」「カンマ」「ダブルクォート」「シングルクォート」を含むフィールドをエクスポートして他のデータベースにインポートする方法

MySQL からのエクスポート やたら長い標題になってしまいましたが、MySQL からエクスポートしたデータに以下のような内容が含まれていた際に、その情報を失わずにいかに他のデータベース(や Excel*1 など)にインポートするか、ということです。なお、ここ…

Ubuntu 16.04 LTS にて psycopg2 のインストール時にエラーが出る場合

結論 以下を入れましょう。 # apt-get install python3-dev # apt-get install libpq-dev これでエラーが出ないはずです。 # pip install psycopg2 Installing collected packages: psycopg2 Running setup.py install for psycopg2 ... done Successfully i…

PostgreSQL でダブルクォートを含んだフィールドが正しくインポートできない場合

PostgreSQL で CSV ファイルのインポート PostgreSQL にて CSV(広義の意味の方で、Character Separated Values)からのインポートをする場合に、ダブルクォートが含まれているフィールドがインポートできずにハマった話です*1。 *1:ダブルクォートをフィー…

SQLite で空の値が指定できない場合

SQLite で空の値 例えば、以下のようなデータがあったとします。 id money 1 1000 2 3 500 このテーブルでmoneyが空であるレコードを指定したい場合に結構ハマってしまいました。 ダメな書き方 以下の書き方だとダメでした。 money = "" money = '' money = …

SQLite の .import で no such table というエラーが出る場合

結論 文末にセミコロンを付けていませんか。.importのようなドットから始まる命令には文末のセミコロンは不要です。 情報源

2016年末のKONAMIの公式Twitterアカウントにて幻水に関する多くのツイートがなされる

昨年末にコナミの公式Twitterアカウントから多くの幻水の情報が発信されました。以下、まとめます。 幻想水滸伝 1995年12月15日、PS用RPG「幻想水滸伝」が発売され、本日で21周年となりました。多くのファンの皆さんにお祝いしていただいているツイートをた…

Superset 0.15.1 がリリースされました

2016/12/29 に Airbnb 製の BI ツール、Superset の 0.15.1 がリリースされました。 あわせて Docker のイメージ(非公式)も更新されています。 0.15.1 の細かな改良点は CHANGELOG を見ていただくとして、個人的には以下の点の改良が大きいです。 IE 11 su…

Superset を Ubuntu 16.04 LTS にインストールして簡単に触ってみる

Superset Airbnb によるいわゆる BIツール であるオープンソースの Superset がここ最近、話題になっています。今までは私は Re:dash を主に用いてきましたが、比較の意味も含めて Superset に触ってみることにしました。

Python 3.6.0 をインストールする際に出てくる警告に対処する(Ubuntu 16.04 LTS)

Python 3.6.0 のインストール Python 3.6.0(おそらくは 3.5.0 以上)をインストールした際に次のような警告が出てくることがあります。 Installing Python-3.6.0... WARNING: The Python bz2 extension was not compiled. Missing the bzip2 lib? WARNING: …

Ubuntu 16.04 LTS に pyenv をインストールする方法

pyenv Ubuntu に入れます。半自動のpyenv-installerを用いるといいでしょう。 すなわち、以下のとおりにcurlしてやればよいです。当然ながらgitも必要です。Dockerの生まれたて環境だと入っていない場合もあるので注意です。 # curl -L https://raw.githubus…

SQLite3 を GUI(Webアプリ)で扱う場合の選択肢

SQLite3 を GUI で SQLite3 はその性質上、GUI のネイティブアプリよりも Webアプリ の方が使いやすいです。2016年12月23日時点だと何があるのか調べてみました。

Ubuntu 16.04 LTS の Python3 で fake2db にてデータを作る方法

fake2db fake2db はダミーデータを簡単に大量に作ることができる Python 用のツールです。詳しくは以下のあたりを。 Ubuntu 16.04 LTS で SQLite3 用に使おうとしたらハマった*1ので書いておきます。 *1:DBの種類以前の問題だと思いますが

Adminer のインストールから使用まで

Adminer Adminer という Webアプリケーション があります。データベースを Webブラウザ ベースで操作できるアプリケーションです。phpMyAdmin を代替するものとして作られたそうです。

Poderosa 4 で日本語を入力する方法

結論 「改行」を「CR」にしましょう。

SQLite3 のコマンドラインでヒストリや補完が効かない場合

SQLite3 でカーソルキーやタブキーが効かない Ubuntu 16.04 LTS に入れた SQLite3 のコマンドラインで、↑キーや TAB キーを押しても ^A のような制御文字が出てきて操作が思いどおりにいかないことがあります。 macOSの例 macOS の例はウェブにいくらか見つ…

幻想水滸伝II の 18周年 を祝う Amazon Dash Button のコードを書いた

1998年の12月17日は、「幻想水滸伝II」が発売された日です。2016年の同日、コナミの公式 Twitter もお祝い申しておりました。 その強さがあれば、すべてを守れると思った・・・一作目から約三年の時を経た1998年の今日、PlayStation向けゲームソフト「幻想水…

FOSONN モバイル DLPプロジェクター を PC で用いる場合は解像度に注意

超コンパクトなプロジェクター 超コンパクトなプロジェクターとして「FOSONN モバイル DLPプロジェクター」を購入しました。 FOSONN モバイル DLPプロジェクター 日本語説明書付き ワイヤレス接続 DLNA/Miracast/Airplay対応 バッテリー・スピーカー内蔵出版…

Jupyter Notebook を永続的に起動させる方法

Jupyter Notebook を# jupyter notebookで起動させると、そのシェルを閉じると実行が終了してしまいます(サーバが落ちる)。 これをシェルが終了しても永続化して起動させ続けるためには、nohupしましょう。 # nohup jupyter notebook > /dev/null 2>&1 & …

Apache 上の PHP で SQLite3 を扱う場合の方法

環境 Ubuntu 16.04.1 LTS です。 結論 php-sqlite3を忘れずに。 # apt-get insatll -y sqlite3 php-sqlite3 インストールが終わったら Apache を再起動しましょう。 # service apache2 restart

MySQL に CSV ファイルをインポートするときの改行コードは LF でないといけない

完全に覚え書きです。参考(というか答え)にさせて頂いたページはこちらです。感謝。 MySQLのLOAD DATA INFILEで大はまりした話 | infoScoop開発者ブログ ハマってしまっているときに、こういうズバっと一直線な回答にたどり着くとうれしいものです。

Slim を単体で使う場合の方法

Slim を単体で Ruby 用のテンプレートエンジンである Slim は、一般には Rails 用のテンプレートとして用いられることが多いようですが、単体で Webページ の静的ジェネレーター(というと大げさかもしれませんが)として用いることができます。

早急に Go(Golang) を投げ出してしまった話

Hugo を使いたい Hugo を使ってみようと思い、Ubuntu に Go を入れてみたけど使えずに挫折した話です。読み方は「ヒューゴ」です。なお、私は Go に触るのはこれがほぼ初めてです。

mysql2 の gem を使って MySQL に接続する際に文字コードを utf8mb4_general_ci にする方法

MySQL へ格納できない Twitter のツイートを MySQL に記録しようとした際に Ruby で mysql2 を用いようとしたのですが、どうあがいてもエラーで止まることがあります。Incorrect string valueとか出てきますが、MySQL に収める前の生取得データはちゃんと取…

Powered by はてなブログ