MySQL の操作

Posted by muchag | Shell Script,さくらインターネット | 2015-12-10 (木) 11:35:33

【環境】
さくらインターネット:プレミアム
エラー
Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’

こんなエラーが出たとき
他の場合であれば、ちゃんとした対応が必要みたいだけど
さくらインターネットの場合は、MySQL が別サーバーになっているため
ホストの設定をしていないと、このエラーが出る。

つまり、ホストの設定を追加してあげればよいだけ。

ログイン
  1. $ mysql -h mysql***.db.sakura.ne.jp -u user_name -p
mysqldump
保存場所

mysqldump コマンドを実行したときのデフォルトの保存場所は

/home/user_name

なので、mysqldump などというディレクトリを1つ追加して
そちらへ保存されるようにする。

保存ファイル名

当然、指定するファイル名にも、パスを追加。

mysqldump/hoge.dump
コマンド
  1. $ mysqldump -h(ホスト名)-u(DB ユーザー名)-p(データベース名)(テーブル名:省略可)> mysqldump/hoge.dump
  2.  
  3. $ mysqldump -h mysql***.db.sakura.ne.jp -u user_name -p database_name > mysqldump/hoge.dump
Shell Script,さくらインターネット | 2015-12-10 (木) 11:35:33 |

さくらインターネット Index

Posted by muchag | さくらインターネット | 2015-12-10 (木) 10:57:14

さくらインターネット様には、私が Web の世界に足を踏み入れたときに
大変お世話になりました。

右も左もわからない私に、様々なアドバイスをくださり
一歩一歩前進するお手伝いをしてくださいました。
この場を借りて、御礼申し上げます。

丸っきりの書きかけ項目は Not found になる。 
 
では~ スタート~!!

CLI
  1. Bitbucket とのやり取り
  2. Git インストール
  3. シンボリックリンク
MySQL
  1. 操作

 

がい~ん!(はまったこと)
  1. 解決済み(たぶん)
    1. Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’
  2. 未解決
参考サイト
さくらインターネット | 2015-12-10 (木) 10:57:14 |

さくらインターネットで CakePHP

Posted by muchag | .htaccess,CakePHP,さくらインターネット | 2011-06-06 (月) 1:01:52

さくらインターネットで CakePHP を利用するには
.htaccess のルールがあるとのこと。

【環境】
[CakePHP] 1.3.10
ディレクトリ構成

さくらインターネットでは

/home/(アカウント名)/www

が Web 公開ディレクトリ。

よって公開したくないファイル群は

/home/(アカウント名)

に配置する。

今回は主要3点セット cake, app, webroot を以下のように配置した。
ちなみに、webroot は directory3 とリネームしてある。

/home/(アカウント名)/directory1/app
/home/(アカウント名)/directory1/cake
/home/(アカウント名)/www/directory2/directory3

 

.htaccess

この配置で以下のように設定したら稼動した。

/home/(アカウント名)/www/directory2/directory3/.htaccess
  1. <IfModule mod_rewrite.c>
  2.     RewriteEngine On
  3.     RewriteCond %{REQUEST_FILENAME} !-d
  4.     RewriteCond %{REQUEST_FILENAME} !-f
  5.     RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
  6.     RewriteBase /directory3
  7. </IfModule>

6行目を追加。

参考元サイトでは他にも設定が必要なことが書いてあるが
現在のところこれだけで稼動している。

またおかしくなったら加筆・修正する。
 

不思議

っていうか、webroot を directory3 とリネームしてあるのに

/home/(アカウント名)/directory1/app/.htaccess


RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]

これで動いている意味がわからない・・・。

それと、参考元サイトを見て気がついたんだけど
「cake インストールフォルダ」って、CakePHP を DL して解凍したときに
app, cake ・・・が入っているフォルダでしょ?

ここに配置されている .htaccess ファイルも index.php ファイルも
こういうディレクトリ配置で置き場所がわからない・・・つまり無視している。
でも動いている・・・不思議。 🙄
 
参考元サイト:CakePHP Users in Japan フォーラム さくらインターネットで404エラー

.htaccess,CakePHP,さくらインターネット | 2011-06-06 (月) 1:01:52 |

SEO -> URLの重複

Posted by muchag | .htaccess,さくらインターネット | 2010-06-03 (木) 0:57:15

[PHPプロ!] 重複するURLを防ぐことでSEO効果を上げるTips

こんなページを見つけて
お! なるほど と思った。

私のサイトはSEOなんてあんまり考えていないけど
.htaccess の知識は相当乏しいので
練習がてらやってみた。

1.ドメインリダイレクト

しかしながら、上記サイトにある
.htaccess での
http://example.com -> http://www.example.com
のリダイレクトは、さくらの私のサイトでは正常に動作しなかった。

  1. RewriteEngine on
  2. RewriteCond %{http_host} ^example.com[NC]
  3. RewriteRule (.*) http://www.example.com/$1 [L,R=301]

次にさくらのレンタルサーバ非公式FAQ内の設定例

  1. RewriteEngine on
  2. RewriteCond %{HTTP_HOST} example\.sakura\.ne\.jp [NC]
  3. RewriteRule .* http://www.example.com%{REQUEST_URI} [L,R=301]

これを

  1. RewriteEngine on
  2. RewriteCond %{HTTP_HOST} example\.com [NC]
  3. RewriteRule .* http://www.example.com%{REQUEST_URI} [L,R=301]

としてみたが、これも

ページの自動転送設定が正しくありません
このアドレスへのリクエストに対するサーバの自動転送設定がループしています。
・Cookie を無効化したり拒否していることにより、この問題が発生している可能性もあります。

FireFox 3.5.9 では以上のメッセージによりエラー。
IE 7.0.5730.13 では読み込みが完了しなかった。

で、Web Techniques Pro の URLの書き換え Rewrite にある

  1. RewriteCond %{HTTP_HOST} ^(example\.com)(:80)? [NC]
  2. RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

としたら
http://example.com -> http://www.example.com
に成功した。

2.「/index.php」 と 「/」

  1. RewriteCond %{request_uri} ^/$
  2. RewriteCond %{request_method} GET [NC]
  3. RewriteRule ^/$ /index.php [L,R=301]

これは元々条件分岐で飛ばしてしまっているので
検証不能。
一応設定しておいた。

.htaccess,さくらインターネット | 2010-06-03 (木) 0:57:15 |

さくらインターネット -> MySQLのバックアップ or 入れ替え

Posted by muchag | phpMyAdmin,さくらインターネット | 2010-05-07 (金) 15:33:10

去年だか、さくらインターネットレンタルサーバでは
MySQL のVer 5.1 が使えるようになった。

というわけで、私も5.1へ移行しようかと。

1.エクスポート
【環境】
旧 [MySQL]
サーバ:4.0.27
クライアント:4.1.22

phpMyAdminでエクスポートする際に
文字コード別にテーブルをエクスポートすること

具体的には
phpMyAdmin(3.2.3)で
当該DBを選択して

エクスポート タブを開く。

[エクスポート]
WordPress関連のテーブルを全部選択する。

[オプション]
作成するクエリの最大長 「100」に書き換える
これをしないと、インポート時に回線切れを起こす可能性が高くなる。

画面下
ファイルに保存する にチェック
圧縮 「なし」

以下はデフォルトのままだと思うけど
一応覚書。
[エクスポート]
SQLにチェック

[オプション]
構造 にチェック
 AUTO_INCREMENT 値を追加する にチェック
 テーブル名やフィールド名を逆クォートで囲む にチェック

データ にチェック
 完全な INSERT 文を作成する にチェック
 長い INSERT 文を作成する にチェック
 BLOBに16進数表記を利用する  にチェック
エクスポート形式 「INSERT」

エンコーディングへ変換する
non にチェック

2.仕込み

現時点では、私はサイト製作文字コードを「utf8」にしている。

しかし、以前には「euc」やら「sjis」のサイトも作っていたので
そのときのデータは文字コードが異なる。

そのため、文字コード別に
テーブルをまとめてエクスポートしたのだ。

ローカル(自分のPC)には「***.sql」
というファイルができているわけだが
これをTeraPadで開き
15行目くらいのところにある
/*!40101 SET NAMES euc */;

/*!40101 SET NAMES utf8 */;
に書き換える。

[ファイル]-[文字/改行コード指定保存]で
「UTF-8N」を選択して保存。

3.インポート
【環境】
新 [MySQL]
サーバ:5.1.42
クライアント:5.1.30

先頭のサーバの画面で
[MySQL 接続の照合順序] を 「utf8_general_ci」

自分のDBを選択して [操作]タブをクリックし
画面一番下の
[照合順序] を 「utf8_general_ci」

これを忘れると「~」などが「?」に文字化けする。

また、ファイルサイズが大きくて
途中で切れてしまう場合には
bigdump
というPHPモジュールを用いて
サーバ内でインポート。

ローカルで bigdump にDBの設定を書き込み
インポートしたい .sql ファイルと共に
レンタルサーバスペースへUL。

後は bigdump.php にアクセスして
「INSERT」をクリックするだけ。

phpMyAdmin,さくらインターネット | 2010-05-07 (金) 15:33:10 |

さくらインターネットで携帯投稿を実現

Posted by muchag | OpenPNE,さくらインターネット | 2008-12-06 (土) 16:09:27

さくらインターネットでは、メールサーバがないらしく
携帯からのメール投稿ができない。

そこで、第三者を介してメール投稿できるようにするらしい。

1.携帯メール投稿用のメールアドレスを1つ用意する

さくらインターネットの鯖メニューから、メールアドレスを1つ用意する。(以下、さくらメアド)

2.メール転送設定

JPN.ch にてアカウントを取得し
転送設定を行う。

これは、OpenPNEの場合、携帯からのメール投稿では
その送信先がランダムに設定されるためである。

JPN.ch を利用することで、@example.jpn.ch へ送られるメールを
全てさくらメアドへ転送してくれるので、万事解決。

1.JPN.ch でアカウントを取得
-「登録者情報」の「E-mail」欄には、さくらメアドを入力。
-「転送先情報」の「転送先 URL」には、サイトホームなど転送されて問題のないURLを入力。

2.さくらメアドをチェックし、JPN.ch から確認メールが届いているので、指定のURLを開く。

3.JPN.ch へログインして、「メール転送設定」にて
「@example.jpn.ch 宛メールを全て転送 / メール転送利用規約を承認する」を選択して更新。

4.config.php の設定
26行目の

  1. define('MAIL_SERVER_DOMAIN', 'mail.example.com');

  1. define('MAIL_SERVER_DOMAIN', 'example.jpn.ch');

と変更。

OpenPNE,さくらインターネット | 2008-12-06 (土) 16:09:27 |

さくらレンタルサーバでの php, pear, pecl などの注意点

Posted by muchag | PHP,さくらインターネット | 2008-01-08 (火) 21:41:34

環境
さくらレンタルサーバ プレミアム
さくらレンタルサーバ ビジネス・プロ

先日、プレミアムの方のサーバコンパネで、PHP のバージョン選択ができるようになっていることに気が付いた。
PHP5 を使いたくて、散々悩んだ挙句にビジネス・プロを申し込んだ途端の出来事・・・ガーン。
ま、色々と勉強になるし、いっかw

さて、標記について、気が付いたことをメモ。
◆◆◆プレミアムでのシェルコマンドについて
TeraTerm ログインして、そのまま %pear などとコマンドを入れると、どうやら PHP4 用のコマンドになるっぽい。
たとえ、上記のサーバコンパネで PHP のバージョンを5に変更していても、だ。
なので、もし、PHP5 用のコマンドを使いたければ

  1. %/usr/local/php-5.2.5/bin/pear

とか

  1. %/usr/local/php-5.2.5/bin/pecl

とする必要があるみたい。
これって、デフォルトを PHP5 用に設定変更する方法があるのかな?

PHP,さくらインターネット | 2008-01-08 (火) 21:41:34 |

さくらへ PEAR をインストールする 2(ブラウザから)

Posted by muchag | PHP,さくらインターネット | 2008-01-07 (月) 21:50:19

前回の初挑戦のときは、グチャグチャになってしまった。
今回は大分整理できたと思う。
第2回挑戦の今回は、コマンドを一切用いずに、ブラウザからインストールする方法。

環境
さくらレンタルサーバ プレミアム
PHP 5.2.5 (いつのまにか、PHPのVersionを選択できるようになっていた・・・)

1.「go-pear.php」をゲット

http://pear.php.net/go-pear を、「go-pear.php」という名前でファイル保存する。
(あちこちの解説サイトに http://go-pear.org から と書いてあるが、このサイトは本日現在存在しない)

2.「go-pear.php」をUL

ftpソフト(ffftpなど)を用いて、上記のファイルをブラウザでアクセス可能な領域にアップロードする。
例:/home/(アカウント名)/www/install/go-pear.php

3.「go-pear.php」の属性を変更

アップロードした「go-pear.php」の属性を「755」または「705」にする。※どうせなら、ftpソフトの転送設定で、*.php の属性を「755」または「705」にしてしまう方が楽

4.ブラウザで go-pear.php にアクセスする。
5.インストール画面が現れるので、「Next >>」をクリックする。
6.項目設定

現れた1~11のテキストボックスのうち
1. Installation prefix は、Webからアクセスできないディレクトリを指定する。
私は

項目 設定例 備考
1. Installation prefix /home/(アカウント名)/(フォルダ名) 独自設定
2. Binaries directory $prefix/bin デフォルト
3. PHP code directory ($php_dir) $prefix/PEAR デフォルト
4. Documentation base directory $php_dir/docs デフォルト
5. Data base directory $php_dir/data デフォルト
6. Tests base directory $php_dir/tests デフォルト
7. Temporary files directory $prefix/temp デフォルト
8. PEAR Installer cache directory $php_dir/cache デフォルト
9. Cache TimeToLive 300 デフォルト
10. Filename of WebFrontend /home/(アカウント名)/www/(フォルダ名)/(ファイル名).php 独自設定
11. php.exe path, optional (CLI command tools) /usr/local/bin/php 独自設定

※3. PHP code directory ($php_dir) が、pear のインストール先になる。
※11. php.exe path, optional (CLI command tools) は、レンタルサーバによって異なるようだ。
さくらレンタールサーバの場合は、/usr/local/bin/php であると ここ に書いてある。

7.インストール終了

インストールが済むと、3行ほど 「Warning」 が出るが、そのまま以下へ進んでよいらしい。
※このときに、右を指している手のグラフィックに続いて 「Note:」 と書かれた場所に出てくるパスをメモ
上記の例でいくと /home/(アカウント名)/(PEARインストールフォルダ名)/PEAR になる

8.php.ini に設定

最後に php.ini へ、pear のパスを設定する。

include_path=".:/home/(アカウント名)/(PEARインストールフォルダ名)/PEAR"これで、テストで test.php を作成して以下のようなコードを書き

<? php
require_once 'HTTP/Request.php';
?>
サーバへULし、
php.ini を

include_path=".:/home/(アカウント名)/(PEARインストールフォルダ名)"
と編集後、
ブラウザからアクセスしてもエラーがでなくなった。

9.パッケージの追加

2008/01/07 現在
PEAR_Frontend_Web (version 0.7.1) にバグがあるようだ

公式サイトの指示通りに、バグを修正する必要がある。

(pearインストールフォルダ)/PEAR/pearfrontendweb.php

をローカルへDL。

テキストエディタ(xyzzy)などで、
pearfrontendweb.php の61行目
substr(dirname(__FILE__), 0, -strlen('PEAR/PEAR'))

substr(dirname(__FILE__), 0, -strlen('PEAR'))
と編集後、サーバへUL

9-1.パッケージインストール画面の表示

上表の10番で指定したファイルにアクセスする

9-2.パッケージをインストール

出てきたページの最下部にある 「Quick-install a package」 の
テキストボックスにPEARパッケージ名を入力して 「install」 ボタンをクリックするだけでインストール終了。

参考元サイト:コマンドプロンプトを使わないで、さくらへPEARをインストール(Go-PEAR使用)
参考元サイト:大八洲.NET

PHP,さくらインターネット | 2008-01-07 (月) 21:50:19 |

さくらでの .htaccess の注意点

Posted by muchag | さくらインターネット | 2007-12-21 (金) 4:36:38
Option は利用不可
文字コード

○「日本語(Shift-JIS)
×「Unicode UTF-8」

さくらインターネット | 2007-12-21 (金) 4:36:38 |

さくらへ OpenPNE をインストールする

Posted by muchag | OpenPNE,さくらインターネット | 2007-12-17 (月) 4:28:12
【環境】
[OpenPNE] 2.x
[MySQL] 4.0.x
DL

OpenPNE本体をDL
OpenPNE
 

FTP 設定

ftpソフトの転送モード設定
「*.php」を755
「*.cron」も755にする方がよいらしい
 

phpmyadmin

①Language を ja-UTF-8 に。
②OpenPNEファイル群の中の setup/sql 内にあるテーブル設定とデータをインポート

OpenPNE 基本設定
config.php

OpenPNEファイル群の中の config.php.sample から config.php を生成
 

Web上の絶対パス(URL)

define(‘OPENPNE_URL’, ‘http://www.example.com/’);
 

DB サーバ設定

phptype mysql
username さくらのアカウント名
password さくらのDBPass
hostspec さくらのDBアドレス
database さくらのアカウント名
new_link false
 

DB 暗号化キー

何でもよいっぽい
 

config.inc.php

OpenPNEファイル群の中の public_html 内にある config.inc.php を設定
define(‘OPENPNE_DIR’, realpath(‘../’));
の部分を、自分が作成した通りの相対パスを設定
ちなみに「../」1つで、1階層(当たり前かw)
 

アップロード

OpenPNEファイル群の中の public_html 内は、「www」ディレクトリ内へ
OpenPNEファイル群の中の public_html 外は、「www」ディレクトリ外へ
 

パーミッションの設定

「www」ディレクトリ外に生成した OPENPNE_DIR の「var」ディレクトリ以下の全フォルダを「777」へ
 

管理者を登録

ブラウザからセットアップ画面へアクセスして、セットアップ
http://www.example.com/?m=setup

参考サイト:おぢさん日記改

OpenPNE,さくらインターネット | 2007-12-17 (月) 4:28:12 |
次ページへ »