请选择 进入手机版 | 继续访问电脑版
快捷导航
bugkill

在CU里也有半年了,吸取了不少精华,呵呵也该贡献给CU里的兄弟了,希望对初学者有所帮助。
操作环境:(Redhat linux 9.0)
主要讲如何用源码包安装php4.4.0+mysql4.1.9+apache-2.0.54,这些版本
其中我建议初学者安装最好用源码包编译这样相对比较稳定。
目前你可以去mysql,php,apache 网站下载最新最稳定的版本;我讲的是最简单的安装操作;也就是说让一个新手,能建一个支持由apache 来运行的简单的网站,并支持php和mysql和各种语言 ;

假如你对apache熟悉的情况下,可以更多的关心扩展功能,比如对asp, jsp的支持等。
可以去apache官方网站看下手册

一、如果你原来是采用rpm包安装的apache和php以及mysql,现在可以完全卸掉它。我们要用rpm -qa 这个命令,查询我们安装过的相应的php、mysql以及apache的RPM,然后把这些包一个一个的卸掉
1.        卸载mysql ;

[root@bugkill root]# rpm -qa | grep mysql
libdbi-dbd-mysql-0.6.5-7
php-mysql-4.3.3-6
mysql-3.23.58-4
mysql-bench-3.23.58-4
mysql-server-3.23.58-4
mysql-devel-3.23.58-4
上面是我系统里有的,呵呵安装的时候看你需要什么服务了,反正各种系统上是不一样的
[root@bugkill root]#

卸载过程建议:最好从最下面的一个包开始,因为有些东西是有顺序的。所以这是要注意的。
在这里,我们应该先应该把mysql-devel-3.23.58-4卸掉,然后才是mysql-server-3.23.58-4等, 要一个一个的来;

方法是:
[root@bugkill root]#rpm -e mysql-devel

再举一例:比如我们想卸载php-mysql-4.3.3-6,应该用下面的办法

[root@bugkill root]#rpm -e php-mysql

如果有卸不掉的,就是有顺序,比如和php相关的,当然要先卸php的了;

2.卸载apache ,和卸载mysql的方法是一样的。

[root@bugkill root]# rpm -qa | grep httpd
redhat-config-httpd-1.1.0-5
httpd-devel-2.0.47-10
httpd-manual-2.0.47-10
httpd-2.0.47-10

3.卸载php,和mysql的方法是一样的;
[root@bugkill root]# rpm -qa | grep php
php-mysql-4.3.3-6
php-4.3.3-6
php-xmlrpc-4.3.3-6
php-imap-4.3.3-6
php-pgsql-4.3.3-6
php-devel-4.3.3-6
php-ldap-4.3.3-6
php-snmp-4.3.3-6

注意:如果有卸不掉的包,应该加参数来卸载,比如我们卸载php-snmp-4.3.3-6,有困难,就要用找出相依赖的包,先卸掉那个包,然后再来卸这个包。可能有实在也卸不掉的。应该用--nodeps这个参数。但是如果实在卸载不掉,那也没必要非得卸载。编译是可以的
[root@bugkill root]# rpm -e php-snmp-4.3.3-6 –nodeps

二、通过源码包安装mysql
========================================================
1.下载:当前版本是mysql-4.1.9 ,比如我们在/usr/local目录下建一个临时的安装目录mysql,把下载下来的mysql-4.1.9.tar.gz,放到/usr/local/mysql/目录中;

[root@bugkill root]# mkdir /usr/local/mysql

http://www.mysql.com/get/Downloads/....ihostunit.com/

2.解压、编译和安装:

1]解压
[root@bugkill root]# cd /usr
[root@bugkill usr]# cd /local/mysql

[root@bugkill mysql]# ls
mysql-4.1.9.tar.gz

[root@bugkill mysql]#tar zxvf mysql-4.1.9.tar.gz

2]编译和安装:这个地方注意的是,我们要把mysql-4.1.9安装到我们指定的目录中,为了系统和安全和优化,建议把自己用源码包安装的服务器类软件都放在/usr/local 目录里。
[root@bugkill mysql]# cd mysql-4.1.9
[root@bugkill mysql-4.1.9]#
./configure --prefix=/usr/local/mysql --with-mysqld-user=bugkill --with-extra-charsets=all --with-unix-socket-path=/usr/local/mysql/var/mysql.sock

[注]关于configure的选项的一点说明:

--prefix=/opt/mysql 把mysql-4.1.9指定安装到/usr/local/mysql目录中;
--with-extra-charsets=all 对多语言的支持;
--with-unix-socket-path=/usr/local/mysql/var/mysql.sock 这个是指定mysql服务器启动后,联机套接字文件所处的位置和文件名,也就是说,如果mysql服务器成功启动后,就能在/usr/local/mysql/var目录中看到mysql.sock文件。如果看不到,肯定是mysql启动不了。
--with-mysqld-user=bugkill 这个是让mysql服务器也能让系统中普通用户bugkill也能启动mysql服务器。你也可以把bugkill换成你的系统中已经存在的普通用户,比如您的系统中已经存在hancs这个用户,那就把bugkill替换成hancs就行了。用普通用户来启动mysql的好处是:mysql的进程会自己死掉自动退出。当然root用户也可以,不过有时mysql有些进程死了,但不会自动退出,root自己也杀不掉。所以用普通用户就有这样的好处,大多不会出现mysql进程已死,但不会退出的情况;

[root@bugkill mysql-4.1.9]# make

[root@bugkill mysql-4.1.9]# make install

这样就安装完了

3]配制mysql:安装只是第一步,我们还要对mysql进行相应的配制;

一般的情况下mysql要找配制文件my.cnf,位置在/etc目录下,所以我们得把文件my.cnf文件放到/etc/目录下。让mysql服务器启动时能找到它。

我们安装好mysql后,配制文件应该在/usr/local/mysql/share/mysql目录中,配制文件有几个,比如my-huge.cnf my-medium.cnf my-large.cnf my-small.cnf
,不同的流量的网站和不同配制的服务器环境,当然需要有不同的配制文件了。一般的情况下,my-medium.cnf这个配制文件就可以了;

进入/usr/local/mysql这个目录,看一下是不是已经安装好了?

[root@bugkill mysql-4.1.9]# cd /usr/local/mysql/
[root@bugkill mysql]# ls
bin include info lib libexec man mysql-test share sql-bench

我们把/usr/local/mysql/share/mysql这个目录下的my-medium.cnf,复制为my.cnf到/etc目录下。
[root@bugkill mysql-4.1.9]# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf

还得创造MySQL授权表, 否则数据库也是启动不了。mysql_install_db,这个命令的用途就是做这个的。mysql的命令都安装到了/usr/local/mysql/bin这个目录中。

[root@bugkill mysql-4.1.9]# /usr/local/mysql/bin/mysql_install_db

运行mysql_install_db命令过后,我们查看/usr/local/mysql就会发现,有个var的目录。这个目录,就是用来装所有数据库的位置,比如我们创建了bugkill的数据库后,就会在/usr/local/mysql/var目录中有bugkill的目录。

4]启动mysql服务器,看下好了没,有时会出现权限方面的错误。

mysql服务器启动,应该是/usr/local/mysql/share/mysql目录中的 mysql.server
启动方法是:
[root@bugkill mysql-4.1.9]# /usr/local/mysql/share/mysql/mysql.server start

启动过后,我们要查看mysql是否启动了,应该用下面的命令;

[root@bugkill mysql-4.1.9]# ps -aux | grep mysqld

如果出现的仅仅是如下的一行,那mysql是没有启动成功。

root 3345 0.0 0.1 5812 648 pts/2 S 17:41 0:00 grep mysqld

我们如何查看错误信息呢?在哪里查看呢?应该到/usr/local/mysql/var目录中去找一个带有.err后缀的文件;
[root@bugkill var]# cd /usr/local/myql/var
[root@bugkill var]# more *.err

可能会出现存在下面的错误信息:

031203 14:49:10 mysqld started
031203 14:49:10 Can't start server : Bind on unix socket: Permission denied
031203 14:49:10 Do you already have another mysqld server running on socket: /tmp/mysql.sock ?
031203 14:49:10 Aborting

031203 14:49:10 /usr/local/mysql/libexec/mysqld: Shutdown Complete

031203 14:49:10 mysqld ended

其实这是权限方面的事,我们把权限设置一下就OK了。我们要设置的权限是/usr/local/mysql/var的目录。要设置为777。

方法是:
[root@bugkill mysql-4.1.9]# chmod 755 /usr/local/mysql/var
另外我们要用beinan这个用户来启动mysqld服务器,当然也得改变一下 /usr/local/mysql/var的属性

[root@bugkill mysql-4.1.9]# chown -R bugkill:bugkill /usr/local/mysql/var

[root@bugkill mysql-4.1.9]# su bugkill

然后再重启mysql服务器。

[root@bugkill mysql-4.1.9]#
/usr/local/mysql/share/mysql/mysql.server start

[root@bugkill mysql-4.1.9]# ps -aux | grep mysql


5]为了让mysql也能让我们刚才编译是指定的普通用户bugkill也能启动mysql服务器。所以我们还要把/usr/local/mysql目录归属到bugkill这个用户手下,在这里,我们要用到chown命令。

[root@bugkill mysql-4.1.9]# chown -R bugkill:bugkill /usr/local/mysql/

如果您编译时,比如用的是系统中已经存在的hancs用户,应该是下面的办法,
[root@bugkill mysql-4.1.9]# chown –R hancs:hancs /usr/local/mysql/

至此mysql已经编译安装完成,下面我们要介绍一点mysql的基本管理,以及最基本的用法。如果您想学的更多的,应该找一下mysql的手册.

3.mysql的一点用法,最基础的的基础



1]如何创建mysqld数据库的管理用户??

数据库安装好后,我们应该为mysql数据库创建一个管理帐号。要把root用户设置为管理员,我们应该运行下面的命令;

[root@bugkill mysql-4.1.9]#
/usr/local/mysql/bin/mysqladmin -u root password 198009
[root@bugkill mysql-4.1.9]#
通过上面的命令,我们可以知道,mysql数据库的管理员是root,密码是198009。

2]如何进入mysql数据库?以mysql数据库管理员root,密码为198009为例;

[root@bugkill mysql-4.1.9]# /usr/local/mysql/bin/mysql -uroot -p198009

输出上面的命令后,出现的是如下的提示;

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6 to server version: 3.23.58

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>;

注意:操作这些命令的时候,应该把mysqld服务器打开。这些新手兄弟早就知道了吧:)
3]如何在数据库中操作命令呢,我想这是mysql手册都有的,我主要说几个要注意的地方。其实我也会不了几个命令。如果自己想学的弟兄,也不是什么难事;在windows中操作过mysql的,其实在这里也是一样的,mysql是跨平台的数据库,用法都是相同的。


1]查看mysql中都有哪些数据库?
代码:
mysql>; show databases;
+----------+
| Database |
+----------+
| mysql    |
| test     |
+----------+
2 rows in set (0.00 sec)

mysql>;

在mysql安装好,设置好管理员后,第一次进入系统,我们用show databases;命令查看数据库的列表,发现有两个数据库,mysql和test,这是系统自建的.


三、安装apache-2.0.54

1.下载:版本是httpd-2.0.54,比如我们在/usr/local目录下建一个临时的安装目录apache,把下载下来的httpd-2.0.54.tar.gz,放到/usr/local/apache/目录中;


也可以wget 后面是你要下载的网址
2.解压:

[root@bugkill local]# cd /usr/local/apache
[root@bugkill apache]# ls

mysql-4.1.9 httpd-2.0.54.tar.gz mysql-4.1.9.tar.gz
[root@bugkill apache]# tar zxvf httpd-2.0.54.tar.gz

3.编译:
[root@bugkill apache]# cd httpd-2.0.54

[root@bugkill httpd-2.0.54]# ./configure --prefix=/usr/local/apache --enable-track-vars --enable-cgi --with-config-file-path=/usr/local/apache/conf

解释:
--prefix=/opt/apache 指定把apahce安装到/usr/local/apache目录中;
--enable-cgi 支持CGI;
--with-config-file-path=/usr/local/apache/conf 指定把apache的配制文件放在/usr/local/apache/conf中;比如httpd.conf配制文件就在这个目录中;
--enable-track-vars 为启动cookie的get/post等追踪功能

如果需要更多的选项,可能通过下面的命令来查看;

[root@bugkill httpd-2.0.54]# ./configure --help

下一步就是make 和make install

[root@bugkill httpd-2.0.54]# make

[root@bugkill httpd-2.0.54]# make install

安装完成后,会在/usr/local目录下生成/usr/local/apache

4.启动apache;如果编译成功后,我们首先想到的是如何启动apache,在这里,我们要明白apache的守护进程是 /opt/apache/bin目录中 apachectl ;

启动apache守护进程;
[root@bugkill httpd-2.0.54]# /usr/local/apache/bin/apachectl start

打开浏览器,输入 http://localhost 就能看到一个apache的欢迎页面了,这表示我们已经成功解决了apache的安装
举报 使用道具
| 回复

共 0 个关于本帖的回复 最后回复于 2005-11-7 15:01

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩推荐

  • 逸品商城访问量统计分析周报--20171209
  • 逸品商城访问量统计分析周报--20171223
  • 余梓和:12.2利润把握好天天大非农,再次获
  • 储心岚:投资应该正确和准确!
  • 储心岚:投资应该正确和准确!

明星用户

QQ|小黑屋|http://bbs.wonyen.com/ ( 闽ICP备06033317号-1 闽公网安备35020502000200 )

GMT+8, 2018-1-23 15:27 , Processed in 0.280801 second(s), 36 queries .