所需软件包列表:
- mysql-5.0.92.tar.gz
- openssl-0.9.8l.tar.gz
- httpd-2.2.17.tar.gz
- libxml2-2.6.31.tar.gz
- freetype-2.3.5.tar.gz
- zxvf zlib-1.2.3.tar.gz
- libpng-1.2.40.tar.gz
- gd-2.0.35.tar.gz
- libmcrypt-2.5.7.tar.gz
- php-5.2.17.tar.gz
软件包全部安装在 /usr/local目录下,apahce的主目录设在/home/htdoc,mysql的数据目录设在/home/var
安装过程:
1、建立用户
- groupadd mysql
- useradd -m mysql -g mysql -d /usr/local/mysql
- groupadd www
- useradd -m www -d /home/www -s /sbin/nologin
2、安装mysql
- tar xzvf mysql-5.0.92.tar.gz
- cd mysql-5.0.92
- ./configure --prefix=/usr/local/mysql --localstatedir=/home/var --with-charset=utf8 --with-extra-charsets=all --with-berkeley-db --with-innodb --without-readline --enable-assembler --with-pthread --enable-thread-safe-client --with-client-ldflags=-all-static
- make
- make install
编辑mysql配置文件
vi /etc/my.cnf
- [client]
- character-set-server = utf8
- port = 3306
- socket = /tmp/mysql.sock
- [mysqld]
- character-set-server = utf8
- replicate-ignore-db = mysql
- replicate-ignore-db = test
- replicate-ignore-db = information_schema
- user = mysql
- port = 3306
- socket = /tmp/mysql.sock
- basedir = /usr/local/mysql
- datadir = /home/var
- log-error = /home/var/mysql_error.log
- pid-file = /home/var/mysql.pid
- open_files_limit = 10240
- back_log = 600
- max_connections = 5000
- max_connect_errors = 6000
- table_cache = 614
- external-locking = FALSE
- max_allowed_packet = 32M
- sort_buffer_size = 1M
- join_buffer_size = 1M
- thread_cache_size = 300
- #thread_concurrency = 8
- query_cache_size = 512M
- query_cache_limit = 2M
- query_cache_min_res_unit = 2k
- default-storage-engine = MyISAM
- thread_stack = 192K
- transaction_isolation = READ-COMMITTED
- tmp_table_size = 246M
- max_heap_table_size = 246M
- long_query_time = 3
- log-slave-updates
- log-bin = /home/var/binlog/binlog
- binlog_cache_size = 4M
- binlog_format = MIXED
- max_binlog_cache_size = 8M
- max_binlog_size = 1G
- relay-log-index = /home/var/relaylog/relaylog
- relay-log-info-file = /home/var/relaylog/relaylog
- relay-log = /home/var/relaylog/relaylog
- expire_logs_days = 30
- key_buffer_size = 256M
- read_buffer_size = 1M
- read_rnd_buffer_size = 16M
- bulk_insert_buffer_size = 64M
- myisam_sort_buffer_size = 128M
- myisam_max_sort_file_size = 10G
- myisam_repair_threads = 1
- myisam_recover
- interactive_timeout = 120
- wait_timeout = 120
- skip-name-resolve
- #master-connect-retry = 10
- slave-skip-errors = 1032,1062,126,1114,1146,1048,1396
- #master-host = 192.168.1.2
- #master-user = username
- #master-password = password
- #master-port = 3306
- server-id = 1
- innodb_additional_mem_pool_size = 16M
- innodb_buffer_pool_size = 512M
- innodb_data_file_path = ibdata1:256M:autoextend
- innodb_file_io_threads = 4
- innodb_thread_concurrency = 8
- innodb_flush_log_at_trx_commit = 2
- innodb_log_buffer_size = 16M
- innodb_log_file_size = 128M
- innodb_log_files_in_group = 3
- innodb_max_dirty_pages_pct = 90
- innodb_lock_wait_timeout = 120
- innodb_file_per_table = 0
- #log-slow-queries = /home/var/slow.log
- #long_query_time = 10
- [mysqldump]
- quick
- max_allowed_packet = 32M
始初化及相关配置
- /usr/local/mysql/bin/mysql_install_db --user=mysql
- chown -R mysql:mysql /home/var
- /usr/local/mysql/bin/mysqld_safe --user=mysql &
- cp ./support-files/mysql.server /etc/rc.d/init.d/mysql
- chmod +x /etc/rc.d/init.d/mysql
- chkconfig --add mysql
- service mysql start
- /usr/local/mysql/bin/mysqladmin -u root password 123456
3、安装openssl
- tar zxvf openssl-0.9.8l.tar.gz
- cd openssl-0.9.8l
- ./config
- make
- make install
4、安装apache
- tar zxvf httpd-2.2.17.tar.gz
- cd httpd-2.2.17
- ./configure --prefix=/usr/local/apache --with-mysql=/usr/local/mysql --enable-module=so --enable-shared=max --enable-rewrite --with-mpm=worker --enable-ssl=static --with-ssl=/usr/local/ssl
- make
- make install
把apache添加chkconfig
- cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd
- vi /etc/rc.d/init.d/httpd
- 加入下面两行:
- #chkconfig:345 85 15
- #description: Start and stops the Apache HTTP Server.
- chmod +x /etc/rc.d/init.d/httpd
- chkconfig --add httpd
5、安装GD、libxml、libmcrypt等支持
- #install Libxml
- tar zxvf libxml2-2.6.31.tar.gz
- cd libxml2-2.6.31
- ./configure --prefix=/usr/local/libxml2
- make
- make install
- #install jpeg6
- mkdir -pv /usr/local/jpeg6/{,bin,lib,include,man/man1,man1}
- tar zxvf jpegsrc.v6b.tar.gz
- cd jpeg-6b/
- ./configure --prefix=/usr/local/jpeg6 --enable-shared --enable-static
- make
- make install
- #install freetype
- tar zxvf freetype-2.3.5.tar.gz
- cd freetype-2.3.5
- ./configure --prefix=/usr/local/freetype
- make
- make install
- #install zlib
- tar zxvf zlib-1.2.3.tar.gz
- cd zlib-1.2.3
- ./configure --prefix=/usr/local/zlib
- make
- make install
- #install libpng
- tar zxvf libpng-1.2.40.tar.gz
- cd libpng-1.2.40
- cp scripts/makefile.std makefile
- make
- make install
- #install gd
- tar zxvf gd-2.0.35.tar.gz
- cd gd-2.0.35
- ./configure --prefix=/usr/local/gd --with-png=/usr/local/libpng --with-zlib=/usr/local/zlib --with-freetype=/usr/local/freetype --with-jpeg=/usr/local/jpeg6 --with-libxml=/usr/local/libxml2
- make
- make install
- #install libmcrypt
- tar zxvf libmcrypt-2.5.7.tar.gz
- cd libmcrypt-2.5.7
- ./configure
- make
- make install
6、安装PHP
- tar zxvf php-5.2.17.tar.gz
- cd php-5.2.17
- ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-libxml-dir=/usr/local/libxml2 --with-gd=/usr/local/gd/ --with-jpeg-dir=/usr/local/jpeg6/ --with-zlib-dir=/usr/local/zlib --with-png-dir=/usr/local/lib --with-freetype-dir=/usr/local/freetype --with-mysql=/usr/local/mysql --with-mcrypt=/usr/local/lib/libmcrypt --enable-mbstring --with-openssl --enable-ftp --with-curl --enable-sockets
- make
- make install
- cp php.ini-dist /usr/local/php/lib/php.ini
7、配置apache与PHP关联
vi /usr/local/apache/conf/httpd.conf
红色为插入,蓝色为修改
- ……
- User www
- Group www
- ……
- <IfModule dir_module>
- DirectoryIndex index.html index.php
- IfModule>
- ……
- AddType application/x-compress .Z
- AddType application/x-gzip .gz .tgz
- AddType application/x-httpd-php .php .html .htm
8、最后启动服务
- service httpd start