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

約束の地

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

プログラミング

Knowledge を Docker で運用する

Knowledge 「オープンソースの情報共有サービス」として Knowledge というプロダクトがあります。類似のウェブサービスに引けを取らない素敵なプロダクトです。 個人規模からチーム規模まで、様々な形態で便利に使えるサービスだと思います。

Docker 運用の Knowledge をバージョンアップしたらメールが送信できなくなった

Knowledge 「オープンソースの情報共有サービス」として Knowledge というプロダクトがあります。類似のウェブサービスに引けを取らない素敵なプロダクトです。 個人規模からチーム規模まで、様々な形態で便利に使えるサービスだと思います。

SourceTree でローカルリポジトリの場所を変更する方法

結論 目的のローカルリポジトリを、変更したい場所に「移動」する。そして SourceTree で当該リポジトリを開こうとすると「ローカルリポジトリが見つからない」と怒られるので、その際に移動先のディレクトリを指定する。 つまづきどころ メニューや設定をど…

rails generate で固まる場合の対処方法

環境 Railsは5.1.1 Rubyは2.4.1 結論 Gemfileのspringとspring-watcher-listenをコメントアウトする*1。 # gem 'spring' # gem 'spring-watcher-listen', '~> 2.0.0' 固まったときにだけやればいい 固まらないこともあるので もしコメントアウトした場合は作…

rbenv の環境下で /bin 配下のコマンドが直接実行できないとき

結論 rbenv rehashを実行する。 $ rbenv rehash 理由 ここで私がダラダラ書くよりもこちらで的確にまとまっています(感謝)。 いちいち rehash するの面倒くさい rehashを省く方法はいくつかありますので各自検索をしてみてください*1。 *1:投げやり……

Virtual Floppy Image Converter が Windows 10 で起動しないとき

Virtual Floppy Image Converter ディスクイメージのコンバータである Virtual Floppy Image Converter(vfic) が Windows 10 で起動しない場合の対処方法です。

SourceTree 2 でローカルリポジトリのツリーが表示されないとき

結論 新規タブを開く。

Windows版の Visual Studio Code が起動しないとき

Visual Studio Code ご存知、マルチプラットフォームに対応したエディタの Visual Studio Code です。 Windows版が起動しない April 2017 (version 1.12)(厳密には version 1.12.1)がリリースされていたのでポータブル版を落として既存のファイルに上書き…

GitHub Pages で ディレクトリにアクセスした際に index.html が読み込まれないとき

GitHub Pages で index.html が読み込まれない 正しくプッシュしたにもかかわらず、https://foobar.github.io/repository_name/とディレクトリまでのアドレス指定でアクセスした際に、https://foobar.github.io/repository_name/index.htmlが自動で読み込ま…

スライダープラグイン slick を最低限のレベルで導入する

スライダー ウェブページで多くの画像やコンテンツを効果的に表示するために、いわゆる「スライダー(カルーセル)」機能の導入を図ることがあるかと思います。状況によっていくつかの手段が考えられると思いますが*1、ほぼ全ての場合をカバーできると私が思…

rbenv を使って Ruby のバージョンを変えて Rails の環境を構築する方法(Ubuntu 16.04 LTS)

Rails で用いる Ruby のバージョンを手軽に変更する rbenv を用いて Ruby のバージョンを自由に変更して Rails の環境を構築する方法です*1。対象としているのは Ubuntu 16.04 LTS ですが、他の場合でもだいたい一緒だと思います。 *1:特に Rails の環境構築…

Mastodon を Docker で起動する方法

Mastodon を Docker で起動する ご存知 Mastodon です。以下は Windows の Vagrant 上の Ubuntu 16.04 LTS での内容ですが、おそらくどの環境でも通じると思います。

Windows の VirtualBox の Vagrant で ubuntu/xenial64 の環境を構築する手順(一般ユーザ)

Vagrant で Ubuntu 以前にこんな記事を書きました。ただ、思いっきり root 前提です。 一般ユーザを作る 上記の記事を参考に、一般ユーザを作ります。大したことはしません。 一般ユーザを作成する 以降、作成する一般ユーザの名前をmurayamaとします。まず…

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 結論 自分が情けない。

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 alternative mecab-dictionary (/…

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 の 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…

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のようなドットから始まる命令には文末のセミコロンは不要です。 情報源

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

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

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 を代替するものとして作られたそうです。

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

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

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

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

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開発者ブログ ハマってしまっているときに、こういうズバっと一直線な回答にたどり着くとうれしいものです。

Powered by はてなブログ