edo1z blog

プログラミングなどに関するブログです

データベース

Firestoreの概要と特徴

Firestoreとは? Firestoreは、NoSQLデータベースで、JOINとかできないですが、ある程度のSQLは使えます。クエリ実行時は全てインデックスが使われるので、作成されていないインデックスが必要な場合、実行できません。 Firestoreのすごいところ Googleのサ…

cakephp3 - DB設定時のTime Zoneエラー

Windows10でXampp使ってcakephp3を動かすとき、DB設定のtimezoneをAsia/Tokyoにすると下記エラーがでた。 General error: 1298 Unknown or incorrect time zone: 'Asia/Tokyo' 対処法は、ここのとおりやったらできた。 ここから、timezone_2017a_posix_sql.z…

cakephp2 - database.phpの情報でmysqlのpdoで接続する

cakephp2で、database.phpの情報でmysqlのpdoで接続する方法。 下記で、database.phpで設定している内容を取得できる。 include_once APP.'Config'.DS.'database.php'; if(class_exists('DATABASE_CONFIG')) { $this->db_config = new DATABASE_CONFIG(); } …

Mac El Capitan - MySQLインストール・設定

Macの状態 El Capitan 10.11.5です。 brewはインストール済みです。 MySQLインストール $ brew install mysql ==> Downloading https://homebrew.bintray.com/bottles/mysql-5.7.12.el_capitan.bottle.tar.gz Already downloaded: /Library/Caches/Homebrew/…

cloud9でcakephp3・MySQLを使う

cloud9プロジェクトの作成 cloud9でPHPを選択してプロジェクトを作ります。 MySQLの起動 $ mysql-ctl start Installing MySQL * Stopping MySQL database server mysqld ...done. * Starting MySQL database server mysqld ...done. * Checking for tables w…

RDSからEC2のmysqlに移す

RDSは便利ですが、高かったです。 EC2のMySQLのバックアップ RDS運用の前はEC2のMySQLで運用していたので、古いですが現状のEC2のMySQLを一応バックアップしておきます。 $ sudo mysqldump --databases hogehoge --single-transaction --order-by-primary -r…

ローカルのMySQLからAmazonRDSに移管する

EC2を使っていて、EC2のサーバに直接MySQLのDBを入れている状態から、AmazonRDSに移管します。自動でバックアップとかしてくれるので便利だからです。 Amazon RDSのインスタンスを作成する まず、RDSのインスタンスを作成します。https://aws.amazon.com/jp/…

centos6.5にsqlite2をインストール

参考:CentOS 5 に sqlite(2)をパッケージで入れる。(yumでインストール) $ vim /etc/yum.repos.d/fedora.repo fedora.repoの中身 [fc6extras] name=Fedora Extras $releasever - $basearch #baseurl=http://download.fedora.redhat.com/pub/fedora/linux/ex…

PostgreSQL - select ・フィールド一覧

selectは基本mysqlと変わらないっぽい。 select * from users where id = 1; とかやる。 テーブルのフィールド一覧を確認するのは、 \d table_name

vagrant セットアップ (centos6.5 postgreSQL)

mkdir hoge cd hoge vagrant init vim Vagrantfile (config.vm.box = "centos6.5") vagrant up vagrant ssh sudo -i yum install vim vim /etc/yum.conf (#exclude=kernel*) exit exit vagrant reload vagrant ssh sudo -i yum install php yum install post…

PostgreSQLのデータベースの作成・インポート

ちなみに、インストールとかをメモっておきます。 CentOS6.5です。 yum -y install postgresql-server php-pgsql passwd postgres su - postgres initdb --encoding=UTF8 --no-locale pg_ctl -w start exit 大体こんな感じだった気がする。 さて、データベー…

phpPgAdminのインストール - CentOS6.5(Vagrant)

参考:phpPgAdmin の導入とセットアップ ~ CentOS-4.5 まずphpPgAdminをゲットします。 http://phppgadmin.sourceforge.net/doku.php phpPgAdmin-5.1.tar.gzというのをダウンロードした。 /vagrantにおいた。 cd /vagrant tar zxvf phpPgAdmin-5.1.tar.gz p…

mysqldump - 特定テーブルの構造のみダンプ

参考:4.9.7. mysqldump(テーブル構造とデータのダンプ) mysqldump [OPTIONS] database [tables] 特定テーブルの構造のみダンプしたいんじゃ。 mysqldump -u root -p -d hoges > hoges.sql これでいいのじゃ。-dを使うと構造だけダンプしてくれるのじゃ。 …

capistrano3でcakephpのmigrations pluginを実行させる

cookpadの人がridgepoleというのを作られまして、これはべきとうせいが保証されているらしい。ちなみにべきとうせいという読み方は間違っているかもしれない。漢字が変換で出てこない。どうもテーブル一覧つくってそれを更新するだけでいいっぽくて、その一…

mysql 大きいサイズのsqlを分割してインポートする

大きいsqlをインポートするのら、php.iniで最大サイズを変更すればできるといえばできる。ローカル環境とかなら。でもインポート中にエラーとかでると結局sql直したりしなきゃいけない。今回は100テーブルあって全部で30MBくらいのsqlなので、テーブル毎に分…

EC2 phpmyadminが動かない

APCとmemcachedを入れたことが原因だった。 当初でていたエラーはこれ。 Undefined property: PMA_Error::$hash in /usr/share/phpMyAdmin/libraries/Error.class.php on l ine 169 Notice: Undefined property: PMA_Error::$isDisplayed in /usr/share/phpM…

cakePHP findのorderで配列の順番にソートするように設定する

$array = array(5, 4, 31, 29); $options = array( 'order' => "FIELD(id, " . implode(',', $array) . ")", ); return $this->find( 'all', $options );

Vagrant CentOS6.5 phpMyAdminを使う

phpmyadmin使えるようにしよう。めんどくさいし。 $ yum --enablerepo=epel install -y phpMyAdmin php-mysql php-mcrypt apache再起動したけど、入れない。 client denied by server configuration: /usr/share/phpMyAdmin というエラーがでている。 phpMyA…

mysqlコマンド

$ mysql -p -u root show databases; create database hoge; use hoge; source import.sql; show tables; select name,value from hoges limit 10; select * from hoges where name='hoge'; update hoges set value='hogehoge' where name='hoge'; show colu…

XAMPPのMySQLの場所

/Applications/XAMPP/xamppfiles/bin/mysql -u root -p

MySQL - 文字コードの確認・設定関連のコマンド

MySQLの文字コードに関する設定を確認するコマンド show variables like "chara%"; データベースの文字コード変換コマンド alter database hogehoge character set utf8; テーブルの文字コードをチェックするコマンド show create table hogehoges; テーブル…

cakePHP モデルからランダムに取得する

orderに、'rand()'とやる public function get_banners($num = 3){ $options = array( 'limit' => $num, 'order' => 'rand()' ); return $this->find('all', $options); }

MySQLのインデックス

参考: MySQLパフォーマンスチューニングのためのインデックスの基礎知識 大きめのテーブルにカラムやインデックスを追加する際の注意 インデックスの追加 ALTER TABLE phone_book ADD INDEX (last_name) 部分的インデックスの追加 ALTER TABLE phone_book A…

Eclipse4.2.2 MySQL接続エラー

エラー内容 ---------------------------------------------------------- com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver h…

EclipseでMySQLのテーブルを確認できるプラグイン Quantum DB

Quantum DB 使い方が書いてあるサイト

cakePHP Paginator Sort 任意の順番でソートさせる

cakePHPのPaginatorのsort機能は便利だが、例えばフィールドに格納されている内容が、"非常に忙しい"、"忙しい"、"平均的"、"暇"、"すごく暇"といった文字列になっている場合、忙しい順に並べたいと思っても、cakePHPは日本語が読めないし、意味も分からない…

CSVからテーブル作成用のSQL文を作成するPHP

macのnumbersで、windowsエクセルを開き、csv化することは問題なくできるが、フィールドの値にカンマが使われていたり、改行文字が使われている場合は注意が必要である。カンマが使われている場合は往々にしてあるので、事前にカンマを<カンマ>などのユニー…

Mac10.8.3 cakePHPとMySQLの連動エラーの対応(XAMPP使用時)

cakePHPでBakeしようとしたら、下記エラーが出た。 Warning Error: PDO::__construct(): [2002] No such file or directory (trying to connect via unix:///var/mysql/mysql.sock) XAMPPのphpinfo()で、MYSQL_SOCKETのパスを確認し、上記エラーに出ている/v…

Mac OS X 10.8.3 にMySQLをインストールする

ターミナルで、Homebrewというのをインストールしてから、HomebrewでMySQLをインストールする。 ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)" brew install mysql 参考:http://tukaikta.blog135.fc2.com/blog-entry-220.html

PHP データベース接続

データベースへの接続 try { $dbh = new PDO('mysql:host=localhost;dbname=blog_app','dbuser001','dbpwd0001'); } catch (PDOException $e) { var_dump($e->getMessage()); exit; } データベースへの接続解除 $dbh = null; データベースへのデータ挿入 $st…