ubuntu下apache+mysql+php+phpmyadmin安装配置

张映 发表于 2011-01-03

分类目录: 服务器相关

标签:, , , , , ,

一,安装apache,php,phpmyadmin,mysql

apt-get install apache2 libapache2-mod-php5 php5 php5-gd  php5-mysql phpmyadmin

安装phpmyadmin的时候,会弹出个对话框,让你选择apache的类型,这里装的是apache2选择apache2就行了。在这里我为什么没有用apt-get来安装mysql呢,因为报错,如下

下列的软件包有不能满足的依赖关系:
mysql-server-5.0: 依赖: libdbi-perl 但是它将不会被安装
依赖: mysql-client-5.0 (>= 5.0.51a-3ubuntu5.8) 但是它将不会被安装
E: 无法安装的软件包


依赖包libdbi-perl找不到,我又安装libdbi-perl,又提示我,依赖: perlapi-5.8.4找不到,我又安装perlapi包,提示我找不到perlapi安装包,我想是不是源里面没有,我换了好几个下载源都不行。没办法自己编辑源码来安装mysql了。

下载地址:http://dev.mysql.com/downloads/

tar zxvf mysql-5.5.2-m2.tar.gz
cd mysql-5.5.2-m2
./configure --prefix=/usr/local/mysql      //在这里我没有指定用户安装默认是mysql用户
make && make install
groupadd mysql                             //所以在这里我们要建一个msyql的用户和组
useradd -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
chmod +w /usr/local/mysql
mkdir /usr/local/mysql/data
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
cp support-files/my-medium.cnf /usr/local/mysql/my.cnf
nano /usr/local/mysql/my.cnf
//加上以下内容
[mysqld]
socket  = /tmp/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/mysql.pid

到这儿mysql就安装好了。

二,apache配置和启动

ubuntu下用apt-get来安装的apache2,我感觉很怪异,看一下目录树

zhangy@ubuntu:~$ whereis apache2
apache2: /usr/sbin/apache2 /etc/apache2 /usr/lib/apache2 /usr/share/apache2 /usr/share/man/man8/apache2.8.gz
zhangy@ubuntu:~$ tree /etc/apache2
/etc/apache2
|-- apache2.conf                  //apache的配置文件
|-- conf.d
|   `-- charset                   //编码设置文件
|-- envvars                       //用户设置文件
|-- httpd.conf
|-- mods-available                //可用模块目录
|   |-- actions.conf
|   |-- actions.load
。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。
|   |-- version.load
|   `-- vhost_alias.load
|-- mods-enabled                 //已启动模块目录
|   |-- alias.conf -> ../mods-available/alias.conf
|   |-- alias.load -> ../mods-available/alias.load
。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。
|   |-- status.conf -> ../mods-available/status.conf
|   `-- status.load -> ../mods-available/status.load
|-- ports.conf                   //端口监听文件
|-- sites-available              //可用站点目录
|   `-- default                  //可用站点的配置文件,根httpd.vhost.conf类似
`-- sites-enabled                //已用站点目录
 `-- 000-default -> /etc/apache2/sites-available/default       //已用站点的配置文件,根httpd.vhost.conf类似

5 directories, 118 files

ubuntu把apache的整个配置进行分块,感觉还是挺清晰的,不过我还是第一次见到这样的布局,如果不习惯这种布局的话,还是用源码进行安装吧。

root@ubuntu:/home/zhangy# /usr/sbin/apache2 -k start
apache2: bad user name ${APACHE_RUN_USER}                    //提示错误
root@ubuntu:/home/zhangy# /etc/init.d/apache2 start        //用这个就不会提示上面的错误了,不过又有新错误了。
* Restarting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[ OK ]
root@ubuntu:/etc/apache2/sites-enabled# cat /etc/hosts         //把里面的相应部分改成以下内容,上面的错误就不会出现了。
127.0.0.1        localhost.localdomain    localhost
127.0.0.1        localhost.localdomain    ubuntu

root@ubuntu:/home/zhangy# /etc/init.d/apache2 restart
* Restarting web server apache2                                         [ OK ]

root@ubuntu:~# ps -e|grep apache     //感觉很怪
 779 ?        00:00:00 apache2
 784 ?        00:00:00 apache2
 785 ?        00:00:00 apache2
 787 ?        00:00:00 apache2
 788 ?        00:00:00 apache2
 789 ?        00:00:00 apache2
 983 ?        00:00:00 apache2
 984 ?        00:00:00 apache2
 985 ?        00:00:00 apache2

二,php的配置

root@ubuntu:/etc/php5# find . -name "php.ini" -print
./cgi/php.ini
./apache2/php.ini

在这里我们用的php-cli,所以配置文件是apache2下面的php.ini,如果需要配置什么的话,可以对其进行修改,改之前最好先备份一下

我发现ubuntu下用apt-get安装的php也是十分的怪异,我就是找不到php,phpize,php-config等文件,这我就搞不懂了,如果我要自己,编译一个模块php,没有phpize怎么办,要重新把php安装一下吗?

三,mysql配置和启动

源码安装mysql的配置文件放在/usr/local/mysql下my.cnf,如果需要改什么可以在这里面修改

mysql启动,mysqld_safe
或者是
root@ubuntu:/usr/local/mysql# cp share/mysql/mysql.server /etc/init.d/mysqld
root@ubuntu:/usr/local/mysql# /etc/init.d/mysqld restart
Shutting down MySQL
. *
Starting MySQL
. *

四,phpmyadmin的配置

root@ubuntu:/etc/apache2/sites-enabled# whereis phpmyadmin
phpmyadmin: /etc/phpmyadmin /usr/share/phpmyadmin

将phpmyadmin的代码/usr/share/phpmyadmin ,copy你的web目录下,就可以,我们可以修改
phpmyadmin/libraries/config.default.php,

$cfg['Servers'][$i]['auth_type'] = 'config';    //设置访问权限的类型
$cfg['Servers'][$i]['user'] = 'root';                //设置用户名
$cfg['Servers'][$i]['password'] = '';              //设置密码

里面的设置有很多,上面的三个是常用的。

通过在ubuntu下,安装apache,php,mysql,phpmyadmin,我得出一个结果,在ubuntu下,最好还是都用源码安装。哈哈,比较适合一般人的习惯。



转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/server/1194.html

2 条评论

  1. 消费易贷款 留言

    咨询下楼主,搭建服务器的时候,软件软件是否都需要自己手工编译安装呢?我看很多管理员似乎很热衷手工编译安装软件,但这样一来升级的时候就会带来很大的问题。如果直接apt-get就会轻松很多,还有个问题就是手工编译效率比直接apt-get的安装方式要高吗?我感觉不到的说!

  2. 张映 留言

    其实我挺不喜欢,手动安装的,因为各种软件管理工具,设计出来就是为了安装方便的,但是有的时候,因为下载源的问题,而安装不了,就挺郁闷的,没办法的情况下,我才会手动安装。手动安装的最大问题,我觉就在于升级后的,这个.so文件找不到,那个.so文件找不到,一般情况下,可以用软链接来解决,手动安装也有很多优势,比较更加的可控,比如安装的参数,安装后新增加插件等。用管理软件安装,也有不好的地方,例如:我用apt-get安装php5后,我死活找不到php,phpize这样的文件,如果我自己要添加一下php模块,我就傻眼了。无从下手。