Hatena::ブログ(Diary)

Rubyとか Illustratorとか SFとか折紙とか このページをアンテナに追加 RSSフィード

2015-12-01

mysqlコマンド

| 18:47 |  mysqlコマンドを含むブックマーク  mysqlコマンドのブックマークコメント

ちょっと MySQL に触るようになってきたのでメモ。

取敢えずDBサーバに接続する

mysql -u <ユーザ> -h <ホスト> -p<パスワード> --ssl

データベース名を続けるとカレントデータベースを指定することも出来る。でもデータベース指定の意味は PostgreSQL とはちょっと違うようだ。指定しててもなくても、そのサーバにあるデータベースはみんな見に行ける、ポストグレスでいう schema 見たいな感じ。だからデータベースをまたがってジョインできたりもするみたい。

あと、まあ --ssl オプションはつけといた方がいいよね。

サーバに接続したらステータスとコマンドの一覧

status
help

データベース等の一覧には

SHOW DATABASES;
SHOW TABLES FROM <データベース名>
SHOW COLUMNS FROM <テーブル名>

カレントデータベースの指定があれば、<データベース名>の指定は省略していいかも。

あと、接続文字コード

EUC-JP指定なら

SET NAMES 'ujis';

あるいは「--default-character-set 」オプション

hs9587hs9587 2015/12/01 19:08 SHOW コマンドは、コマンドラインの mysqlshow でもいい、データベース名とテーブル名の間はスペース、さらにカラム名も指定できる

hs9587hs9587 2015/12/02 15:32 文字セット指定のキーワード、ujis とか cp932 とか、SET NAMES するとき引用符無くてもいいみたい。

hs9587hs9587 2015/12/03 19:13 DESCRIBE <テーブル名>;

トラックバック - http://d.hatena.ne.jp/hs9587/20151201

2015-02-21 Rails勉強会@東京 第92回 このエントリーを含むブックマーク このエントリーのブックマークコメント

久しぶりのRails勉強会@東京 第92回 - Rails勉強会@東京 | Doorkeeperです

セキュリティチェックが必要です

下記 twitter より、そして追記。(この項翌22日に書いてます)

2月21日
@hs9587
志村@hs9587
#railstokyo Rails勉強会@東京 第92回
posted at 13:11:23
2月21日
@hs9587
志村@hs9587
#railstokyo 13:55-30分 はじめてのRails 苦労話とかも、14:45-60分 Changelog、管理画面のベストプラクティス、16:00-60分 Railsアンチパターン、Rails4 アップデートrack-attack
posted at 13:40:10

メニュー。いくつかに分かれたり分かれなかったりして 3時限。

はじめてのRails

2月21日
@hs9587
志村@hs9587
#railstokyo はじめてのRails
posted at 13:56:09
2月21日
@hs9587
志村@hs9587
#railstokyo はじめてのRails、初めの方、どちらかというと発注側の方がいらして、全然分からないので少しはわかるようになりたいという。いろいろ話をする
posted at 14:10:19

Railsから始めるので良い、それで気になったら Ruby の勉強をする。

プログラミング始まるならまず C からとか、そんなことは無い。まず Rails Ruby から始めるのでいい。

Changelog

2月21日
@hs9587
志村@hs9587
#railstokyo Changelog
posted at 14:45:36
2月21日
@hs9587
志村@hs9587
#railstokyo Changelog Rails5 のうりって何だっけ、あんまり特徴ないような
posted at 14:58:49

ActiveRecord の or()メソッドの追加は印象に残った。後で聞いたら使い方結構難しいらしい。

Rails4アップデート

2月21日
@hs9587
志村@hs9587
#railstokyo Rails4アップデート
posted at 15:56:00

粛々として 2の最後にあげ、頑張って 3.0 にしたら一気に 4.2 にいってもいいのではないかとか。3系と4系の間に凄い大きな違いはない。3.1で入った Sprockets はそれなりの相違なんだが、JavaScript も Stylesheet 既に普通に動いてる事になるんで、アセットパイプライン封印しちゃえば関係ないし。

一方、公式の見解としてはひとつひとつ上げてくようにと。APIとか一気に解消することはないので、ログを見ながら先々消えるよという警告に手当てしてけば。

トラックバック - http://d.hatena.ne.jp/hs9587/20150221

2014-05-31

文字列をバイトサイズで切り詰めるのって

| 20:54 | 文字列をバイトサイズで切り詰めるのってを含むブックマーク 文字列をバイトサイズで切り詰めるのってのブックマークコメント

Ruby文字列をバイトサイズで切り詰めるのってどうするんだっけ。

或いは byte単位で切り出すとか、取り出すとか。

志村さんのツイート: "Rubyで文字列をバイトサイズで切り詰めるのってどうするんだっけ"

‏@hs9587

Ruby文字列をバイトサイズで切り詰めるのってどうするんだっけ

なかだ のさんのツイート: "@hs9587 byteslice"

‏@n0kada

@hs9587 byteslice

志村さんのツイート: "@n0kada それではマルチバイト文字のかけらが"

‏@hs9587

@n0kada それではマルチバイト文字のかけらが

なかだ のさんのツイート: "@hs9587 scrub"

‏@n0kada

@hs9587 scrub

志村さんのツイート: "@n0kada byteslice(0,n).scrub('') でなんとかなりそう、ありがとうございます"

‏@hs9587

@n0kada byteslice(0,n).scrub('') でなんとかなりそう、ありがとうございます

1.8以前では一度 slice でサイズで切って、もう一度 slice で正規表現で文字だけ取り出す (Rubyでマルチバイト文字列からnバイト切り出し | Weboo! Returns. ほか)とかあったけど、最近の Rubyではそのマルチバイト文字のかけらのところでエラーになってしまう。

というあたり、ご教示あったように Ruby 2.1. では String#scrub class String (Ruby 2.1.0) でかけらをケアすれば良さそう。

<文字列>.byteslice(0, <バイト数>).scrub('')
トラックバック - http://d.hatena.ne.jp/hs9587/20140531

2014-02-21

PHP SESへのSMTPリレーで mail()

| 15:33 | PHP SESへのSMTPリレーで mail()を含むブックマーク PHP SESへのSMTPリレーで mail()のブックマークコメント

EC2 の AmazonLinux の PHP からメールを出す。メールは別に SES を設定してて、Verified Sender の登録は済んでいる。で、mail()関数 PHP: mail - Manual からメールが送れない、SES の SMTPサーバへは Sendmailの設定でリレーするようにしてて、コマンドラインから mailコマンドでの送信は(きちんと From: に Verified Sender をセットすれば)出来ている。

Returned mail によると「 (reason: 554 Message rejected: Email address is not verified.) 」ということだ。mail()関数ではちゃんと第4引数 additional_headers に From: の設定をしているのに。

それだけでは足りないようだ、第5引数 additional_parameters にて、sendmail の -f オプションで the envelope sender にも Verified Sender をセットしてやればよいようだ。どちらもそうなら From の値とは違っていても大丈夫だった、まあ同じにしましょう。

トラックバック - http://d.hatena.ne.jp/hs9587/20140221

2013-12-20

Redirect と ProxyPass

| 16:31 | Redirect と ProxyPassを含むブックマーク Redirect と ProxyPassのブックマークコメント

Apacheにて、ちょっとサイトの一部を別サーバリダイレクトすることになって RedirectMatch の設定をしてみたんだけど、後段の逆プロクシ設定に上書きされて踏み潰されてしまうみたい。

404 - PAGE NOT FOUND によれば ProxyPass避けすればいいそうだ。

Redirect permanent /subfolder/ /
ProxyPass /subfolder !
ProxyPass / http://localhost:8080/site/
ProxyPassReverse / http://localhost:8080/site/
ProxyPassReverseCookiePath /site /
トラックバック - http://d.hatena.ne.jp/hs9587/20131220