英語メモ

単語

  • hoodie

パーカー

  • tinker

いたずらな子

  • REPL

REPLとは - はてなキーワード

  • companion

仲間

  • capabilitiy

能力

メモ

こういうのも発売するんですねー。
psyshの紹介。明日入れてみよう。
Laravel触るときはtinkerも使えるようにしよう。

英語メモ

単語

  • so far

ここまで

  • mixture

混合

  • scoop

特ダネ

  • folk

人々

  • incredible

信じられない、驚くべき

  • burden

荷物

  • thriving

繁盛している、盛んな

  • interviewee

インタビューされる人

  • prep

準備する

  • realistically

現実的に

  • tout

うるさく勧める

  • deterministic algorithm

決定論的アルゴリズム

  • noticeable

人目をひく、重要な

  • notable

注目に値する

メモ

Laravel podcast、シーズン3ではインタビューショー形式に変わる。
Yarn 1.0の紹介

VirtualBoxメモ

CentOS6を入れる。
昔メモをしていた気がするけどなかったのでメモ。

やること

VirtualBoxで、
新規->... で作成
作成したものを選択し、
設定->ネットワーク->アダプター2
ホストオンリーアダプター有効化

## インストール時
Minimalを選択(自分でいろいろ好きなバージョン入れたいから)

## US配列対応
# 反映
$ loadkeys us
# 永久
$ cp /etc/sysconfig/keyboard /etc/sysconfig/keyboard_old
$ vi /etc/sysconfig/keyboard
KEYTABLE="us"
MODEL="pc105+inet"
LAYOUT="us"
KEYBOARDTYPE="pc"

## ユーザー追加
$ useradd mfham
$ passwd mfham
$ visudo # 権限あれこれ

## SELinux無効化
$ vi /etc/sysconfig/selinux
SELINUX=disabled

英語メモ

単語

  • shareable

共有可能な

  • 〜 as follows

次のように

  • Polymorphic

多様な

  • cyclomatic complexity

循環的複雑度

  • criteria

基準

  • tabular format

表形式

  • complexity

複雑さ

  • caveat

注意

  • applicable

適用できる。
(アクセントは先頭)



メモ

共有可能なリンクを生成するためのパッケージの紹介。
リファクタすべきものを見つけてくれるパッケージの紹介。
Lumen5.5リリースの紹介。
Clean Code PHPの紹介。

LOAD DATA INFILE構文メモ

warningsがでない文を作成するのに時間かかってしまったのでメモしておく。
MySQL5.6を利用。

スキーマ、テーブル

CREATE DATABASE IF NOT EXISTS test;

CREATE TABLE IF NOT EXISTS test.performance_check (
    id BIGINT NOT NULL AUTO_INCREMENT,
    name VARCHAR(1024),
    create_date DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
    p_id1 BIGINT,
    p_id2 BIGINT,
    area INT(1) NOT NULL,
    status INT(1) NOT NULL,
    PRIMARY KEY(id)
)

インポートするデータ

# /home/mfham/work/data.csv
"id","name","create_date","p_id1","p_id2","area","status"
1,"mfham1",2017-09-01 10:10:10,1000,,1,1
2,"mfham2",2017-09-02 10:10:10,1000,1000,1,1

LOAD DATA INFILE構文

  • オートインクリメントのidは処理しない
  • NULLIFを利用する

create_date = @v3 でも問題なかった。
%H:%i:%s は %Tでも良さそう。

LOAD DATA LOCAL INFILE '/home/mfham/work/data.csv'
    INTO TABLE test.performance_check
    FIELDS
        TERMINATED BY ','
        OPTIONALLY ENCLOSED BY '"'
    IGNORE 1 LINES
    (@v1, @v2, @v3, @v4, @v5, @v6, @v7)
    SET
        name = NULLIF(@v2, ''),
        create_date = STR_TO_DATE(@v3, '%Y-%m-%d %H:%i:%s'),
        p_id1 = NULLIF(@v4, ''),
        p_id2 = NULLIF(@v5, ''),
        area = @v6,
        status = @v7;

実行結果

mysql> CREATE TABLE IF NOT EXISTS test.performance_check (
    ->     id BIGINT NOT NULL AUTO_INCREMENT,
    ->     name VARCHAR(1024),
    ->     create_date DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
    ->     p_id1 BIGINT,
    ->     p_id2 BIGINT,
    ->     area INT(1) NOT NULL,
    ->     status INT(1) NOT NULL,
    ->     PRIMARY KEY(id)
    -> );
Query OK, 0 rows affected (0.01 sec)

mysql> LOAD DATA LOCAL INFILE '/home/mfham/work/data.csv'
    ->     INTO TABLE test.performance_check
    ->     FIELDS
    ->         TERMINATED BY ','
    ->         OPTIONALLY ENCLOSED BY '"'
    ->     IGNORE 1 LINES
    ->     (@v1, @v2, @v3, @v4, @v5, @v6, @v7)
    ->     SET
    ->         name = @v2,
    ->         create_date = STR_TO_DATE(@v3, '%Y-%m-%d %H:%i:%s'),
    ->         p_id1 = NULLIF(@v4, ''),
    ->         p_id2 = NULLIF(@v5, ''),
    ->         area = @v6,
    ->         status = @v7;
Query OK, 2 rows affected (0.15 sec)
Records: 2  Deleted: 0  Skipped: 0  Warnings: 0

mysql> SELECT * FROM test.performance_check;
+----+--------+---------------------+-------+-------+------+--------+
| id | name   | create_date         | p_id1 | p_id2 | area | status |
+----+--------+---------------------+-------+-------+------+--------+
|  1 | mfham1 | 2017-09-01 10:10:10 |  1000 |  NULL |    1 |      1 |
|  2 | mfham2 | 2017-09-02 10:10:10 |  1000 |  1000 |    1 |      1 |
+----+--------+---------------------+-------+-------+------+--------+
2 rows in set (0.00 sec)

MySQL5.6インストールメモ

パフォーマンス調査のために、CentOS6にMySQL5.6をインストールする。

参考

MySQL :: A Quick Guide to Using the MySQL Yum Repository

このマニュアルに全部書いてある。
英語読めて幸せやーってこういうときに感じる。
もちろん日本語訳もありますけども。

MySQL :: MySQL 5.6 リファレンスマニュアル :: 2.5.1 MySQL Yum リポジトリを使用して MySQL を Linux にインストールする

メモ

$ wget https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
$ sudo rpm -Uvh mysql57-community-release-el6-11.noarch.rpm

# 今回インストールするのは5.6
$ sudo yum-config-manager --disable mysql57-community
$ sudo yum-config-manager --enable mysql56-community 
$ yum repolist enabled | grep mysql                                                                                                                                         
mysql-connectors-community MySQL Connectors Community                         42
mysql-tools-community      MySQL Tools Community                              51
mysql56-community          MySQL 5.6 Community Server                        377

$ sudo yum install mysql-community-server
$ sudo service mysqld start

# rootのパスワード設定したり、テストDB削除選択など
$ mysql_secure_installation

$ mysql -uroot -p

mysql> CREATE USER 'mfham'@'localhost' IDENTIFIED BY '****'; 
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'mfham'@'localhost' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)

その他

MySQLのインストール記事載せたような気がして見返してみたけど、だいぶめんどくさいことやってた。
便利な世の中になりました。