PhpMyAdmin (简体中文)

From ArchWiki
Revision as of 16:11, 4 December 2012 by Kynikos.bot (Talk | contribs) (wikify some external links, use https for archlinux.org)

Jump to: navigation, search

准备

按照 LAMP wiki 所说的方法安装apache, php 和 mysql。

安装

运行下面的命令安装 phpMyAdmin

#pacman -S phpmyadmin php-mcrypt

配置

如果已经安装过老版本的phpmyadmin,请先删除:

rm -r /srv/httpd/phpMyAdmin

复制配置文件到你的httpd的配置文件目录

cp /etc/webapps/phpmyadmin/apache.example.conf /etc/httpd/conf/extra/httpd-phpmyadmin.conf

将下面这行添加到 /etc/httpd/conf/httpd.conf:

Include conf/extra/httpd-phpmyadmin.conf

或者,在命令行执行下面的命令也是相同的结果:

echo -e "\nInclude conf/extra/httpd-phpmyadmin.conf" >> /etc/httpd/conf/httpd.conf

编辑/usr/share/webapps/phpMyAdmin/.htaccess,像下面这样注释掉(或者删除)'deny form all':

#deny from all

否则在访问phpmyadmin installation时,会返回错误信息"Error 403 - Access forbidden!"。

'/etc/httpd/conf/extra/httpd-phpmyadmin.conf'中应该包含了下面这些信息:

Alias /phpmyadmin/ "/usr/share/webapps/phpMyAdmin/"
        <Directory "/usr/share/webapps/phpMyAdmin">
                AllowOverride All
                Options FollowSymlinks
                Order allow,deny
                Allow from all
        </Directory>

打开'/etc/php/php.ini',编辑'open_basedir'这行,将下面的路径补充在后面:

:/usr/share/webapps/:/etc/webapps

例如,像下面这个样子:

open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/srv/:/usr/share/webapps/:/etc/webapps

phpmyadmin需要PHP的mcrypt模块支持,编辑/etc/php/php.ini的:

 ;extension=mcrypt.so
取消前面的注释
 extension=mcrypt.so

访问 phpmyadmin 安装

通过浏览器访问下面的链接,完成phpmyadmin安装:

http://localhost/phpmyadmin/
或者
http://localhost/phpmyadmin/index.php

注意: 'localhost' 是/etc/rc.conf文件中你配置的主机名.

如果你希望像下面这样,不需要最后的/访问phpmyadmin:

http://localhost/phpmyadmin

需要将 '/etc/httpd/conf/extra/httpd-phpmyadmin.conf'当中的:

Alias /phpmyadmin/ "/usr/share/webapps/phpMyAdmin/"

修改为:

Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"

你可能需要参考 this thread.

如果你看到了错误信息 "#2002 - The server is not responding (or the local MySQL server's socket is not correctly configured)",你可能需要修改 /etc/webapps/phpmyadmin/config.inc.php 文件中的这一行:

$cfg['Servers'][$i]['host'] = 'localhost';

将"localhost"替换为你的 /etc/hosts 和 /etc/rc.conf文件中指定的主机名。


如果你希望通过访问http://localhost/phpmyadmin/setup 使用phpmyadmin的安装脚本, 需要在/usr/share/webapps/phpmyadmin 目录下创建一个httpd用户可写的配置文件夹:

cd /usr/share/webapps/phpmyadmin
sudo mkdir config
sudo chgrp http config
sudo chmod g+w config

其他信息(过时)

This page holds a sample 'config.inc.php' file that you can place in the main phpMyAdmin directory so that it immediately starts working

Things you should do first

Create a 'controluser', so that phpmyadmin can read from the main mysql database.

mysql -u root -pYOURROOTPASSWORD
mysql> grant usage on mysql.* to controluser@localhost identified by 'CONTROLPASS';

Where is phpmyadmin

in phpmyadmin 3.2.2-3 the file is missing /srv/http/ create this symlik

ln -s /usr/share/webapps/phpMyAdmin/ /srv/http/phpmyadmin

Things you should change

controluser is set to controluser
controlpass is set to password
verbose is set to name_of_server

Sample 'config.inc.php' file

<?php
/*
 * Generated configuration file
 * Generated by: phpMyAdmin 2.11.8.1 setup script by Michal Čihař <michal@cihar.com>
 * Version: $Id: setup.php 11423 2008-07-24 17:26:05Z lem9 $
 * Date: Mon, 01 Sep 2008 20:34:02 GMT
 */

/* Servers configuration */
$i = 0;

/* Server ravi-test-mysql (http) [1] */
$i++;
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['port'] = '3306';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['controluser'] = 'controluser';
$cfg['Servers'][$i]['controlpass'] = 'password';
$cfg['Servers'][$i]['auth_type'] = 'http';
$cfg['Servers'][$i]['verbose'] = 'name_of_server';

/* End of servers configuration */

$cfg['LeftFrameLight'] = true;
$cfg['LeftFrameDBTree'] = true;
$cfg['LeftFrameDBSeparator'] = '_';
$cfg['LeftFrameTableSeparator'] = '__';
$cfg['LeftFrameTableLevel'] = 1;
$cfg['LeftDisplayLogo'] = true;
$cfg['LeftDisplayServers'] = false;
$cfg['DisplayServersList'] = false;
$cfg['DisplayDatabasesList'] = 'auto';
$cfg['LeftPointerEnable'] = true;
$cfg['DefaultTabServer'] = 'main.php';
$cfg['DefaultTabDatabase'] = 'db_structure.php';
$cfg['DefaultTabTable'] = 'tbl_structure.php';
$cfg['LightTabs'] = false;
$cfg['ErrorIconic'] = true;
$cfg['MainPageIconic'] = true;
$cfg['ReplaceHelpImg'] = true;
$cfg['NavigationBarIconic'] = 'both';
$cfg['PropertiesIconic'] = 'both';
$cfg['BrowsePointerEnable'] = true;
$cfg['BrowseMarkerEnable'] = true;
$cfg['ModifyDeleteAtRight'] = false;
$cfg['ModifyDeleteAtLeft'] = true;
$cfg['RepeatCells'] = 100;
$cfg['DefaultDisplay'] = 'horizontal';
$cfg['TextareaCols'] = 40;
$cfg['TextareaRows'] = 7;
$cfg['LongtextDoubleTextarea'] = true;
$cfg['TextareaAutoSelect'] = false;
$cfg['CharEditing'] = 'input';
$cfg['CharTextareaCols'] = 40;
$cfg['CharTextareaRows'] = 2;
$cfg['CtrlArrowsMoving'] = true;
$cfg['DefaultPropDisplay'] = 'horizontal';
$cfg['InsertRows'] = 2;
$cfg['EditInWindow'] = true;
$cfg['QueryWindowHeight'] = 310;
$cfg['QueryWindowWidth'] = 550;
$cfg['QueryWindowDefTab'] = 'sql';
$cfg['ForceSSL'] = false;
$cfg['ShowPhpInfo'] = false;
$cfg['ShowChgPassword'] = false;
$cfg['AllowArbitraryServer'] = false;
$cfg['LoginCookieRecall'] = 'something';
$cfg['LoginCookieValidity'] = 1800;
?>