RDSインスタンスが停止できない・・・

AWS

RDSインスタンスの停止機能が追加されました https://forums.aws.amazon.com/ann.jspa?annID=4670タイトルと真逆のことをいきなり言うスタイル早速使用してないRDSを停止しようと思ったら、、 押せないじゃないかー原因は、マルチAZを使用していたため シン…

DWHで権限を設定した時にかかった罠

DWH

1日潰してしまったのでメモ知ってる人なら当たり前なのかもしれない。。 ** 権限の許可・拒否SELECTの場合・GRANT SELECT ON OBJECT::[TableName] TO [UserName];・DENY SELECT ON OBJECT::[TableName] TO [UserName]; という感じで許可や拒否ができるのです…

Linuxでファイルを空にする

ログファイルがめっちゃ容量大きいので空にしたい時とかに使える! (adsbygoogle = window.adsbygoogle || []).push({}); いろいろ方法があるのですが、1番シンプルなやつをメモ :> FileNameこれで指定したファイルが空になります。

SQLの結合

SQL

SQLにおいての最初の難関といえば結合かなって思います! これだけ見れば基礎的なところは大丈夫ってのを作っときたいですね。 (adsbygoogle = window.adsbygoogle || []).push({}); 前提 Table A id user_name 1 retail 2 Tom Table B id job 1 engneer 3 n…

Ruby オブジェクトのインスタンス変数を取得

ちょっと悩んだのでメモ (adsbygoogle = window.adsbygoogle || []).push({}); dog.rb class Dog def initialize(a,b) @a = a @b = b end end dog = Dog.new(1,2) p dog p dog.instance_variable_get(:@a)p dogでは #<Dog:0000000 @a=1, @b=2>p dog.instance_variable_get(:@a)では 1</dog:0000000>…

Rubyの変数代入

sample.rb sampleA = 'hoge' sampleB = sampleA puts sampleA # hoge puts sampleB # hoge sampleA << 'huga' puts sampleA # hogehuga puts sampleB # hogehuga (adsbygoogle = window.adsbygoogle || []).push({}); sampleAもsampleBも同じ(hoge)オブジェ…

PHPのif文あれこれ

PHP

条件判別式で使用するif文ですが、いろいろな書き方があるのでちょっとメモ チームでやるときはちゃんとルール決めようね! よく見るやつ if (判別式) { // true } else { // false }自分がよくやる方法です。 半角の具合やelseの場所とか個人差あるよね コ…

SQLiteで終了したり、表示したり

SQLiteでCtrl + Cで終了しようとしたらできなかったので、exit;で抜けようとしたらエラった話。。 終了方法 sqlite>.exit どうやらSQLiteは.hogeになるっぽいshow tables;ではなく、、 テーブル表示 sqlite>.table;コマンド違くて詰まることもあるから、ちゃ…

4半期経ってたので振り返り

今年の初めに行った目標の振り返りをしましょう。 ブログ ・月2回以上の更新 昨年は全然できなかったアウトプットをやっていきます。→ 2回以上は更新している。 アウトプット的な意味だと、githubも使い始めた。 これからも増やしていく。 仕事 ・給料を上…

JavaScriptのエラーメモ 随時更新

エラーを出すことは悪いことじゃないよ! でもエラーの内容がわからないとちょっと苦戦するので、 個人的によく見るやつをメモ 未定義 定義していない変数を使おうとするとエラー。 c; Uncaught ReferenceError: c is not defined(…) 参照 nullやundefinedに…

Redisに大量データをインサート(Bulk Insert)

英語が読める方はここが参考になるよ! Redis Mass Insertion – Redis数百万のレコードを1件1件丁寧に入れてるとても素敵なシステムがあったので、さすがに改修した話。 こんなファイル作ろうぜ ちなみに改行コードは、\r\nでないといけないっぽい。 SET K…

VagrantにPHPの環境構築

めっちゃ久々にPHPの環境構築した! ただPHPが動くとこまで 下準備 Vagrantfileを編集します。 config.vm.network "private_network", ip: "192.168.33.10"のコメントアウトを外して再起動しよう! いろいろインストール sudo yum -y httpd php iptablesで80…

MacにVirtualBoxとVagrantを入れる

ローカルの開発環境欲しい VirtualBoxのインストール Downloads – Oracle VM VirtualBoxVirtualBox-5.0.20-106931-OSX.dmgをDLしてインストール。 vagrantのインストール www.vagrantup.comMacOSをインストール。 Boxの作成 A list of base boxes for Vagran…

MySQLでサイズの大きいdumpファイルを作る

dumpファイルを作成する場合には注意が必要です。 バックアップで取ることが多いですが、とにかく容量がでかい! 普通に何十GBとかなることもあるので、一瞬でメモリ使用量が100%に行き、最悪常駐プロセスがOSによって殺されるパティーンも・・・そんな…

重複しているカラムを抽出するクエリ

値が重複しているカラムを抽出するクエリを書く機会があるのでメモ (adsbygoogle = window.adsbygoogle || []).push({}); SELECT カラム名 FROM テーブル名 GROUP BY カラム名 HAVING COUNT(カラム名)<>1HAVINGってあんまり使わないですね。 今回のクエリで…

DWHでTOP n PERCENTが使えない・・・

DWH

初めて見るエラーが出てまたもハマる The ORDER BY clause is not valid in views, inline functions, derived tables, sub-queries, and common table expressions, unless TOP or FOR XML is also specified. (adsbygoogle = window.adsbygoogle || []).pu…

SQLのINでNULLを入れたらハマったメモ

別にINを使用する必要はなかったんだけど、たまたま使ったら変な挙動になった話 結論 IS NOT NULLを使えSQLでNOT IN (NULL)を使用したら何も返ってこなかった。 ※IS NOT NULL使ってたんだけどね・・・試しにNOT IN ('NULL')にしたらNULLが除かれて返ってきた…

githubとtwitterをけものフレンズ風にするChrome拡張機能

流行っているので速攻開発 ネタで作ってみた。拡張機能を作る基本的なとこは割愛Chromeメニューのボタンを押したら、githubとtwitterの一部の文字がいい感じになるやつ。 片道切符なので、戻したい場合は更新ww 個人的には戻す機能もつけたかったが、そこま…

Rubyの標準入出力

競技プログラミングにハマりつつあります。 JavaとかCとかはできないので、RubyかJavaScriptかLuaで挑んでいきたいです。競技プログラミングでは標準入出力での採点が行われるので、まずはそこからやっていきたいです。 運営サイトにサンプルが置いてあるの…

2017年の目標

遅くなりましたが、明けましておめでとうございます。 今年はしっかり目標を決めて頑張っていきたいと思います。 ブログ ・月2回以上の更新 昨年は全然できなかったアウトプットをやっていきます。 仕事 ・給料を上げる ・残業時間を減らす 仕事の生産性を…

RubyでS3にあるファイル一覧を取得する

まさかのaws-sdk-v1で!!既にリリースしているものを止めるわけにはいかないので、そのままやることにしました。。 (adsbygoogle = window.adsbygoogle || []).push({}); require 'aws-sdk-v1' AWS.config({access_key_id:'アクセスキー', secret_access_ke…

Ruby on Rails 環境構築@windows

毎回調べることになるはずなので、メモしときます。 RubyInstallerをインストール RubyInstaller for Windows 好みのversionをダウンロードしてサッとインストールする。オプションの設定で、「Rubyの実行ファイルへ環境変数PATHを設定する」と「.rbと.rbwフ…

SQLでNull時に置換する方法

よく使用するMySQLとSQLServerの2パターン (adsbygoogle = window.adsbygoogle || []).push({}); MySQL ifnullかCOALESCEを使用することで置換ができます。 SELECT COALESCE(列名, '0') FROM テーブル名;または SELECT ifnull(列名, '0') FROM テーブル名; …

算数・数学の基礎やるよ!

(adsbygoogle = window.adsbygoogle || []).push({}); とりあえずこの3冊を勉強しようと思います。 エンジニアとして、必要な知識ではない部分もあるかもしれないですが、知っておくと役に立つ可能性もありますし数学好きなので久々にペンと紙を持ってやり…

SQLの結合苦手な人向け

実は僕からはあんまり言うことがない。 (adsbygoogle = window.adsbygoogle || []).push({}); SQLの最初の関門と思っている結合 内部だったり外部だったりleftやrightなどなど色々あってわかりにくいよねnullnote.comじゃあこのサイト見るしかないね! とり…

gzファイルを解凍しないでgrepする

ログファイルなどはwebアプリケーションだととても容量が多いため、 日ごとや月ごとにgzに圧縮されている場合があります。 (adsbygoogle = window.adsbygoogle || []).push({}); ログファイルの中身を検索するのに、いちいち解凍して検索かけるのは 容量的に…

まだ手動テストで消耗してるの? Selenium WebDriver編

最近はやりの自動テストツール。 そんな中から人気のあるSelenium WebDriverの導入から簡単な使い方までを紹介したいと思います。 Java, C#, Python, Ruby, JavaScript(Node.js)がサポートされていますが、今回はRubyを使用します。 時間があればNode.jsもや…

負の数同士の掛け算がどうしてプラスなのか考えてみた

今までエンジニア感漂うブログでしたが、いきなりこんな記事を書いてみます。昔から気になっていたことをふと思い出したので、ちょっとメモ程度に中学校の頃に負の数が現れて、マイナス x マイナス = プラス と習った記憶はあるのですが、 どうしてそうなる…

RubyでSQLを直接実行してcountする[execute]

RubyでSQLを直接実行する際に、executeを使用すると 結果が「Mysql2::Result」っていうクラスのオブジェクトが返ってきて非常に扱いに困ります。 (adsbygoogle = window.adsbygoogle || []).push({}); そもそもcountを使用できなかった気がします。。 そんな…

SQLDWHでカラムのキーが一致してればUPDATE、それ以外はINSERTする

DWH

UPDATEとINSERTそれぞれ別でも良かったのですが、投げるSQLを少なくしたかったので1つにまとめました。@@ROW_COUNTを使用して簡単にいくかなって思ったのですが、、 azure.microsoft.com (adsbygoogle = window.adsbygoogle || []).push({}); どうやら@@ROW…

MYSQLでCSVファイルをインポートする(ローカル)

ローカルのMYSQLにCSVファイルをインポートしたのでメモ書き 使用コマンド LOAD DATA LOCAL INFILE 'file_name' INTO TABLE table_name (adsbygoogle = window.adsbygoogle || []).push({}); 区切り文字や囲む文字にも指定ができるので、それも考慮して作成…

Atomで正規表現を克服

正規表現って難しいですよね。 実際に書いてみても合ってるかわからないし、不具合無く動くかどうかも不安です。 そんな心配を解決するものがありました! (adsbygoogle = window.adsbygoogle || []).push({}); regex-railroad-diagram package テキストエデ…

MySQLで改行やカンマなどの文字列を置換する

目的 DBからCSVファイルを生成しようと思ったら、カラム内に改行やカンマが入っていてファイルが上手く作れないことが起きたので、 CSVファイルに出力する前に改行やカンマを置換処理を行いたい。 (adsbygoogle = window.adsbygoogle || []).push({}); SQL文…

javascriptでランダムな文字列を生成する

大文字、小文字、数字の中からランダムで好きな分だけ文字を出すプログラムを書く機会があったので、 忘れないように書いておきます。 パスワード自動生成とかで役に立つかな? (adsbygoogle = window.adsbygoogle || []).push({}); 今回は10文字分表示させ…

無料GUIのgitクライアント、gitkrakenを使ってみた

gitkrakenとは www.gitkraken.com SourceTreeやTower2のあるなか現れた新生のイカ型gitクライアントです。 公式サイトよりMac / Windows / Linuxに対応した実行ファイルを無料でダウンロードして使用することができます。 (adsbygoogle = window.adsbygoogle…

background-colorを16進数で1ずつ増加させる

今回のゴール ボタンをクリックしたときに、background-colorの値が1ずつ増加していく。 というのをjQueryを使用して行っていきます。 (adsbygoogle = window.adsbygoogle || []).push({}); 使用するプラグイン RGB color parser in JavaScript / Stoyan's …

AWS EC2でnginxをソースコードからインストールしてPHP7を動かすまで(2)

web-design-fox.hatenablog.com前回の続編です。 前回のあらすじ nginxをソースからインストールをして、IPアクセスできるところまで完了しました。 詳しいことは前回の記事をご覧ください。では今回は、PHP7の導入をしていきましょう。 (adsbygoogle = …

AWS EC2でnginxをソースコードからインストールしてPHP7を動かすまで(1)

4月なので今日からまた更新を頑張っていきたいです。今回は少し長いので、2回に分けてやりたいと思います。nginxもyumでインストールすればすぐに出来てしまうのですが、moduleを追加したい時や バージョンを上げたいときにyumの場合は出来ないのでソースコ…

SmartyからJavaScriptへ値を渡す方法

2つほど方法があるので紹介 JavaScriptのコードの中に入れる <script> (function() { var foo = '{$foo}'; var bar = '{$bar}'; }()); </script>わかりやすくて良いのだが、HTMLとJavaScriptが分離できないのが欠点。。 data属性を使う <script src="hoge.js" id="hogejs" data-foo="{$foo}" data-bar="{$bar}"></script>こっちもわかりやすい。 使用するには J…

PHPの「->」と「=>」の意味

PHP

PHPを勉強していて初めて見た「->」と「=>」 いまいち意味がわからなかったですが、少し理解してきたので忘れないうちに書いておこうと思います。 「->」 アロー演算子 アロー演算子は左辺から右辺を取り出す演算子 アロー演算子とはクラスのメソッドやプロパティ…

PHPの可変変数

PHP

変数名を変えることが出来たら便利だと思いません? 例えば、$button1,$button2.....$button10って変数を作ったときに、いちいち1つずつ呼び出すのはめんどくさいですよね そんな時に、可変変数を使えると少しだけシンプルに書くことが出来ます。 (adsbygoo…

マジックインクリメント

PHP

アルファベットをループさせると面白い (adsbygoogle = window.adsbygoogle || []).push({});

PHPでのvar_dump時、配列情報を見やすくしたくない?<pre>

PHP

例えばこんなものをvar_dump();で表示したとき、 (adsbygoogle = window.adsbygoogle || []).push({}); 結果は、 array(4) { [0]=> string(2) "aa" [1]=> string(3) "bbb" [2]=> string(4) "cccc" [3]=> string(5) "ddddd" } 見難いですね。 今回は簡単な配…

PHPの==と===の罠

PHP

演算子 説明 == 値が等しい場合TRUEを返す === 値とデータ型が等しければTRUEを返す (adsbygoogle = window.adsbygoogle || []).push({}); 基本的にこんな説明になっています。 実際に

isset()関数とempty()関数の違い

PHP

かなり迷うとこだと思うので忘れないようにメモ。 (adsbygoogle = window.adsbygoogle || []).push({}); ・isset()関数 PHP: isset - Manual 変数がセットされていること、そしてNULLでないことを検査する。・empty()関数 PHP: empty - Manual 変数が空であ…

セッションを理解していく(2回目)

PHP

フォームのセキュリティを作った際に、 (adsbygoogle = window.adsbygoogle || []).push({}); $name = $_SESSION['name'];から $_SESSION['name'] = $_POST['name'];という記述がありましたが、 $_SESSION['name'] = $name;でもよくない?って思いました。今…

セッションを理解していく(1回目)

PHP

FORMタグでデータを送信するときに、メソッドをPOSTやGETにして送信する。 そのデータはactionでの送信先までしかもって行けない。 (adsbygoogle = window.adsbygoogle || []).push({}); じゃあその他のページに送信データをもっていきたいときにどうしよう…

フォームのセキュリティ

PHP

授業でやった簡単なセキュリティ (時間なかったので名前のところのみ1から作りました。) 簡単な説明もコメントアウトのところに書いてみました。 (adsbygoogle = window.adsbygoogle || []).push({}); フォーム画面(index.php)

htmlspecialchars関数

PHP

htmlspecialcharsとは 特殊文字を HTML エンティティに変換するHTMLには特殊文字や特殊な役割を持った文字があります。 その文字をただの文字に変換して表示してしまう機能を持っています。 フォーム画面などで悪意のある入力を無効化にするのに用いたりし、…

ファイルのパーミッション

忘れないようにもう少しだけパーミッションについて書いておこう。 Linuxでアクセス権限を知りたい コマンドは $ ls -lh です。こんな感じのが出ると思います。 $ ls -lh -rwxrw-r-- 1 hoge hoge 2342 Jul 7 16:15 test.txt謎の -rwxrw-r-- について説明この…