db migration toolどうやって選ぶ?
db migration toolは世の中にたくさんあるので使いたいものを使えばいいと思うが、自分が選ぶとしたらこんな基準があるかなというやつ。
migration toolって何ができたら嬉しいか
検討ポイント | 理由 | 優先度 |
---|---|---|
checksumを確認している | DBが壊れるのは絶対に避けたい。おかしいデータを入れさせない。 | high |
生のSQLで記述する | (好み)使っているtoolがもし更新されなくなった時に変えが効くように。学習コストもDSL記述より低い。 | high |
コマンドライン実行できる | アプリに統合した形(railsなど)だと、そのwebアプリを捨てることが一生できなくなってしまうのでできれば避けたい。 | high |
金額 | 無料の方が嬉しい(当たり前)。flywayとかはライセンス料が意外と高い。 | middle |
dryrunができる | 気軽にロールバックできるようにすればいいのでそこまで問題ではない。 | low |
rollbackができる | rollbackをmigration toolに任せてしまうと意図から外れた変更が起こりかねないので慎重にやるためにも手運用で十分。 | low |
なので自分はflyway(free)をコマンドラインで使うのが好き。
勿論寿命が短いアプリとか、それぞれ適材適所あると思うのでその時にあった物を使うのが一番大事。
こういうdb migration toolいいよとかあったら教えてください。
dotfiles作った
node環境を作ったけどあってるかわからない
nodeのversion管理にnodenvを使う。
$ brew install nodenv
lts版のnodeをinstallする
$ nodenv install 10.15.3 $ nodenv global 10.15.3
.zshrcにPATHとinitを追加する。
export PATH="$HOME/.nodenv/bin:$PATH" eval "$(nodenv init -)"
yarnをインストールする。公式のページを見るとnvm関係を使ってる人は以下のコマンドを実行してください、と書いてあるのでコピペした。
$ brew install yarn --ignore-dependencies Updating Homebrew... Warning: --ignore-dependencies is an unsupported Homebrew developer flag! Adjust your PATH to put any preferred versions of applications earlier in the PATH rather than using this unsupported flag! ==> Downloading https://yarnpkg.com/downloads/1.16.0/yarn-v1.16.0.tar.gz ==> Downloading from https://github-production-release-asset-2e65be.s3.amazonaws ######################################################################## 100.0% 🍺 /usr/local/Cellar/yarn/1.16.0: 14 files, 4.7MB, built in 6 seconds
なんか依存関係が不安。。。ダメそうだったらやり直そう。
mac OSのlocaleの話
大抵のmac userはitermなり元々macに入っているターミナルを使ってると思う。
そしてlocaleが自動で設定されるようなオプションも大概の人はオンになってると思う。
ある案件でmacのタイムゾーンを変えたくなって色々いじった時にmacがおかしくなってることに気づいた。
別のマシンにsshすると-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
の文字が。
どうやらlocaleの返り値がいつの間にか別のものになってたみたいだった。
$ locale LANG= LC_COLLATE="C" LC_CTYPE="UTF-8" LC_MESSAGES="C" LC_MONETARY="C" LC_NUMERIC="C" LC_TIME="C" LC_ALL=
色々調べたら言語と地域の地域をアメリカ合衆国にしてるせいだった。。
日本に戻したら
$ locale LANG="ja_JP.UTF-8" LC_COLLATE="ja_JP.UTF-8" LC_CTYPE="ja_JP.UTF-8" LC_MESSAGES="ja_JP.UTF-8" LC_MONETARY="ja_JP.UTF-8" LC_NUMERIC="ja_JP.UTF-8" LC_TIME="ja_JP.UTF-8" LC_ALL=
ちゃんと戻った。sshも問題なし。
githubの設定をする
パソコンを新しくしたせいでgithubへのアクセスもできなくなってた。
設定した。
$ mkdir ~/.ssh $ cd ~/.ssh $ ssh-keygen -t rsa $ cat id_rsa.pub | pbcopy
クリップボードにコピーした公開鍵をgithubのSettings ->SSH and GPG keys -> new SSH key。
Titleに適当な識別名、Keyに公開鍵登録する。
~/.ssh/configに以下を書く
Host github github.com HostName github.com IdentityFile ~/.ssh/id_rsa User git
あとは
$ ssh -T git@github.com
で接続確認しておしまい。