mysql
インストール MySQLのドキュメントを見ながら進める https://dev.mysql.com/doc/refman/5.6/ja/linux-installation-yum-repo.htmlどのパッケージをインストールするか確認 $ cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core)EL7ベースであるこ…
homebrewでMySQLをインストールすると5.7がインストールされた。が、今回は5.6を使いたかったのでそのときの手順をメモしておく。MySQL5.7のアンインストール $ brew uninstall mysqlMySQL5.6がインストール可能であることを確認してインストール $ brew sea…
テーブルの文字コードをutf8mb4に変更するさいに調べていたが既存のテーブルについては新たにmigrationファイルを作って文字コードを変更するSQLを実行するのが必要そうだったが、調べるのに時間かかったのでメモしておく。$ ./bin/rails g migration change…
ネタみたいだけど、また初歩的なミスをしたのでメモ。mysqlクライアントから確認 $ begin; $ insert into tests(id, name) values(1, 'test'); $ select count(*) from tests where id = 1; +----------+ | count(*) | +----------+ | 1 | +----------+期待…
大した話じゃないけど、ミスったのでメモしておく。calendar idtarget 12017-09-20 22017-09-21 32017-09-22 こんなテーブルがあって、今日(9/21)以下の日付のレコードを抽出したかった。ヒットしない select * from calendar where target <= now();ヒット …
こんなことができたのか キーワードがあるものを上にもってくる。 select id, title from daily order by title like "%キーワード%" desc;以上です
サブクエリのサンプルメモ。 ついでにgroup by した結果のレコード数を求めるサンプル。 $dbo = $this->MyTable->getDataSource(); $subQuery = $dbo->buildStatement(array( "fields" => array("distinct MyTable.id"), "table" => "my_table", "alias" => …
はじめに 今回やりたかったことは以下 ・expressからmysqlへクエリ実行 ・ormは使わずsqlを直接実行したい ・dbの処理部分は共通化したい ・エラー処理も実装するnode-mysqlというライブラリを使いました 実装 ファイル構成 ├── app.js ├── db.js # dbの共通…
今まであまり気にしてこなかったけどちょっと問題になったのでメモ 今回は同じ様な内容のバッチ処理を多重でいくつも回す実装としたため、更新するテーブル・レコードも同じになってデッドロックが発生しました今回の原因となったのは以下 複数テーブルへの…
はじめに mysqlはちょいちょい使ってきたけど今回はちょっと感動でした。やりたかったことは バッチ処理などで集計結果でテーブルを更新する場合などでしたテーブル例はこんな感じ totalsテーブル カラム内容 idPK count集計結果 今まではこんな感じ実装して…
前にも同じようなこと書いた気がしますが、時間が経つとちょっとずつやってる内容が変わってくるのでメモしておきます。 ちなみにさくらのvpsです sshの設定 作業ユーザーの作成 sudo許可 鍵認証設定 パスワードでのログイン禁止と外部からrootでのログイン…
はじめに 僕はけっこうコレやります。 どういうときに使うか考えて見る・レコードが多い複数のテーブルをjoinしなくてはならない場合 ・テーブル分割していてそれぞれのテーブルからデータを取得してきて結果をマージしなくてはならない場合などなど テーブ…
はじめに MySQLはよく使っているのですが外部キー制約はほとんど使った事ありませんでした。 使うデメリットとしてはデータの登録作業が面倒だから・・・程度で考えていましたが、今回は既に外部キーを採用しているシステムでの作業でしたがほとんど経験なか…
はじめに mysqlに接続するときは、開発サーバーにログインしてそこからmysqlコマンドで接続・・・という流れが多かったのですが、開発環境によってはwebサーバーはローカルpcでdbはサーバー上のものを使う・・・ なんてこともあるかと思いますそんなときの実…
めったにやることもないとは思うけど、今回必要だったのでメモ やりたかったことはphpからmysqlにデータを登録する場合でミリ秒単位でdatetime型のカラムに登録したかったことですmysqlのスキーマ定義 CREATE TABLE table_name (ttt DATETIME(6));DATETIME型…
使いたいときはいつも忘れてるので自分用にメモやりたいSQL select * from users where id in (1, 2, 3);fuelphp $user_ids = array(1, 2, 3); $query = "select * from users where id in :user_ids; $params = array("user_ids" => $user_ids); DB::query(…
はじめに 今更感のある内容ですがけっこうハマったのでメモしておきます。 環境としてはAwsのEC2をWebサーバーにRdsをDBサーバーとする構成で Webサーバーにはmysql-serverをインストールしていない状況です。mysql-clientはWebサーバーにインストール済みで…
はじめに 今回やりたかったのは以下のような環境で、sequelproを使いたかった。 で、調べると.ssh/configを使えばできそうでした・踏み台サーバー (pcからssh接続可)・webサーバー (踏み台サーバーからssh接続可)・dbサーバー (webサーバーからmysqlクライア…
久々にやったら過去のメモが見つけずらかったのでメモのまとめ vagrant導入して、LAMP環境構築してfuelphpを使えるようにするまで 1. vagrantでlinux環境構築 vagrantでローカルpcに開発環境を作る手順 2. LAMP環境構築 webサーバ設定作業メモ - 私用 webサ…
はじめに sqlを直接かいちゃえば、以下のような感じで簡単にかけるんですけど今回はこれをfuelphpのクエリビルダで実現してみたのでメモしておきます insert into table1 (colum1, colum2, ・・・) select colum1, colum2, ・・・ from table2 where ・・・o…
はじめに クエリビルダを無理やり使ってみて、少し慣れてきたらすごい複雑なSQLを書かない限りそこまで困らないかなと思ってきました。ただcoreの中を覗いてみた感じだとページングなどでよく使われるSQL_CALC_FOUND_ROWSを実現する方法がなさそうで、強引に…
はじめに わりとphpMyAdmin等のツールを使ってる人や職場は多いのかなと思います。僕がいた職場でもそういうところけっこう多かったです。けど現場によってはそんなツールは断固として使わない!ていうことも多いと思います。そんなときはコマンドラインでの…
はじめに サービスの運営に関わっていると、SQLなどで直接データをいじる機会が多いと思います。 最近かかわっているサイトで、作業ミスがあり復旧作業に時間をとられるということがあったので少し自分なりに考えてみました。 サービスの規模にもよるので何…
やりたいこと awsを使ってLAMP環境の構築。 使用するサービスはEC2、S3、CloudFrontの3つ。 EC2の1インスタンス(1サーバー)にLAMPをインストール。 S3には画像等の静的コンテンツをアップロードして、CloudFrontからS3へとコンテンツを取得。 CloudFrontか…
やりたいこと 少しアクセスの多いサイトなどではありがちなmysqlのレプリケーションを使うことがあると思います。 fuelphpでそれに対応するときの作業をメモしておきます。 いちおう今回想定する環境はマスタdb1台、スレーブdb2台構成のものとします。 db定…
はじめに webサーバを設定する作業があったのですが、いつも同じこと調べながらに作業になるので作業メモとして残しておきます。やりたいことは ・一般ユーザの作成 ・webサーバの設定(バーチャルホストの設定) ・phpのインストールと設定 ・mysqlのインスト…
はじめに phpからmysqlへiphoneの絵文字を含む文字列を登録しようとすると絵文字以降の文字列が登録されない。という現象が起きました。 はじめは、iphone絵文字がmysqlのutf8におさまりきらない文字コードを使ってるとのことだったので登録前に以下のような…
はじめに けっこう前の話になるのだが、初めてソーシャルゲーム案件の開発をしたときの話です ちょうどmixiアプリがリリースされたときの話でそれまではサービスがオープンしてから時間をかけて大きくなってゆきシステム的にボトルネックとなっている箇所を…
やりたかったこと 構造) mst_item 商品マスタ ・id 商品id(PK) ・data 商品データ(phpのserialize関数で変換された文字列)データ例) id,data 1,a:2:{s:4:"name";s:7:"商品1";s:11:"description";s:16:"商品1の説明";} 2,a:2:{s:4:"name";s:7:"商品2";s…
テーブル構造も含めてダンプする mysqldump -u ユーザー名 -pパスワード データベース名 テーブル名 データだけダンプする mysqldump -u ユーザー名 -pパスワード -t データベース名 テーブル オプションtをつける 条件を指定してデータだけダンプする mysql…