Category Archives: phpMyAdmin

phpMyAdmin 3.0登場

phpMyAdmin 3.0登場、お馴染みMySQL管理UIの最新バージョン | エンタープライズ | マイコミジャーナル

phpMyAdminがついにメジャーバージョンアップで3に。

3系から要求するPHPとMySQLのバージョンがそれぞれ5.2以降と5.0以降に変更されているため、以前のバージョンを使っている場合はアップグレードに注意する必要がある。

ですので注意です。

MySQLをソースからインストールした時の、phpMyAdmin設定

LinuxでMySQLをソースからインストールした時にphpMyAdmin用の設定をするメモです。phpMyAdminというか、mysqliですが。php.iniのmysqli設定をインストールしたMySQLのmy.cnfと合わせるというだけですね。

my.cnfで


[mysqld]
port = 3306
socket = /tmp/mysql.sock

と設定しましたので、

php.ini中の

mysqli.default_port = 3306
mysqli.default_socket = /tmp/mysql.sock

をmy.cnfと合わせて記述します。

phpMyAdminの設定ファイル、config.inc.php(無い場合は、config.sample.inc.phpをリネームorコピーしてください)の

$cfg['blowfish_secret'] = 'hoge-blowfish';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['extension'] = 'mysqli';

extensionをmysqliに変更します。
auth_typeはお好みで、auth_type=cookieの場合はblowfish_secretを設定しなくてはいけません。

MySQLは大体パッケージで入れてしまうので、久々にソースからインストールした時に少し戸惑ってしまった、というメモでした

phpMyAdminでリレーションの設定時に「インデックスは設定されていません」とエラーが出る。

うーん、ハマってました。
phpMyAdminでリレーションの設定時に「インデックスは設定されていません」とエラーが出るのです。しっかりインデックスを設定しているのにも関わらず。
原因は、リレーション元と張る先のフィールドタイプが違っていたのでした。とほほ。

members->id が int(10)
hoge->member_id が int(11)

となっているのに、hogeテーブルのmember_idから membersテーブルのidへ懸命にリレーションを張ろうとしていたのです。

それにしても
「インデックスは設定されていません」
という警告は無いだろうと思うのですが、この手のソフトではよくあるコトなのでしょうがありませんね。phpMyAdminのおかげでインデックスや複合ユニーク?などの設定も簡単にできて助かってますし。

phpMyAdminでCSVファイルのインポート

phpMyAdminを使えば色々なファイルからMySQLへのインポートが簡単にできますが、なぜかうまくいかないコトが多いのでメモっておきます。

今回インポートするファイルは、

[code]
“”,”ne-zu”,”1″,”http://www.php-seed.net/”
“”,”hoge”,”1″,”http://www.php-seed.net/blog/”
[/code]

のように、デリミタを「,」(カンマ)、値を「”」(ダブルクォーテーション)で囲っています。文字コードはUTF-8、改行は何でも構わないでしょう。(今回はCR+LFにしました。)
このファイルを拡張子.csvにして保存します。

まず、phpMyAdminでインポートするテーブルを選び、インポートタブを選択します。CSVにはデータのみですので、予め構造が決まっているものとします。(今回、構造はあまり関係ありませんが、簡単に

id(int),name(varchar(255)),sex(int),url(text)

としました)

テキストファイルの場所に、インポートするファイルを選択し、

phpMyAdmin-CSVインポート

  • ファイルの文字セットをutf8に。
  • インポート済みファイルの書式をLOAD DATAを用いたCSVに。
  • フィールド区切り記号を「,
  • フィールド囲み記号を「
  • ローカルキーワードを使用する、にチェックを入れます。

設定を終えたら、実行ボタンを押してインポートを開始します。
無事インポートされましたでしょうか?