Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

Apache、SSL、MySQL和PHP平滑无缝地安装

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

我们的计划

  我们的计划是首先安装MySQL服务器并保证它工作,然后我们将安装PHP和Mod_SSL,最后我们将安装Apache网站服务器。在我们安装了Apache以后,我们可以测试PHP和Mod_SSL支持是否起作用了。

MySQL源代码安装(UNIX)

  你必须用来执行安装MySQL源代码分发的基本命令是(自一个没解开“tar”文件):

  通过使用su成为 root用户。

$su 

  直接进入你有tar文件的目录。(使用一个临时目录。这里使用 /tmp/download/ )

#cd /tmp/download/ 

  使用下列命令提取文件。

# gunzip -d -c mysql-3.22.xx.tar.gz | tar xvf - 

  改变到新目录,它在提取期间创建。

# cd mysql-3.22.xx 

  现在你可以开始“配置”MySQL服务器。你可以用configure指定很多选项,使用configure --help查看所有的选项。我已经选择--prefix指定到安装地点的直接路径。configure将检查你的编译器和一些其他东西。如果你有任何错误,你可以检查config.cache文件查看错误。

# configure --prefix=/usr/local/mysq 

  在你完成了配置以后,你可以执行下列命令make真正的二进制代码。

# make 

  现在你已准备好安装所有的二进制代码。运行下列命令在你用configure --prefix选项指定的目录下安装二进制代码。

# make install 

  在你安装好二进制代码后,现在是创建用于定义权限的mysql表的时候了。


# scripts/mysql_install_db 
# cd /usr/local/mysql/bin 
# ./safe_mysqld & 
# ./mysqladmin -u root password 'new-password' 

  注意:/usr/local/mysql是我选择安装MySQL服务器的目录。你可以通过改变目录选择另外的地方。

你可以通过运行一些简单的测试来验证服务器正在工作以确保MySQL正在运行。输出应该类似于下面所示的:BINDIR=/usr/local/mysql/bin。BINDIR依赖于你在上面的前缀选择的目录。

# BINDIR/mysqlshow -p 
+---------------+ 
| Databases     | 
+---------------+ 
| mysql         | 
+---------------+ 

  一旦你安装好MySQL,它将自动地创建2个数据库。一个mysql表,它控制在实际的服务器中用户、主机和 数据库权限;另一个是一个test数据库,我们能使用test数据库。然而,我们想给你一个快速而简单的MySQL可用的一些命令行选项的概述。这也将保证root被设置了对DB服务器的全部存取权限,即:root有创建数据库、数据库表等的许可,因此我们将创建一个test2数据库,在以后我们用它进行我们的测试。在你通过命令行进入MySQL前,你将被提示root用户的新口令。记住你以前改变了它。


# mysql -u root -p 
mysql> show databases; 
+----------------+ 
| Database       | 
+----------------+ 
| mysql          | 
| test           | 
+----------------+ 
mysql> create database test2; 
Query OK, 1 row affected (0.00 sec) 

  现在选择新的数据库使用,并创建一个名为tst_tbl的新表, 有下列2个字段。字段1是是一个id字段,允许你知道记录的id。实质上为了简化这只是的一个行号。第二个字段是你一个name字段,存储书名信息。这些字段的格式是:字段1(id)是一个长度为3的整数(int),而字段2(name)是一个长度为50的字符(char)字段。为搜索和索引数据,我们指定id为键码。


mysql> use test2; 
Database changed 
mysql> CREATE TABLE books ( id int(3) not null 
-> auto_increment, name char(50) not null, 
-> unique(id), primary key(id)); 
Query OK, 0 rows affected (0.00 sec) 

  现在我们用下列命令验证一切正确无误。


mysql> show tables 
+---------------------+ 
| Tables in test2     | 
+---------------------+ 
| books               | 
+---------------------+ 
1 row in set (0.00 sec) 

mysql> describe books; 
+-------+-------------+------+------+----------+------------------------+ 
| Field | Type        | Null | Key  | Default  | Extra                  | 
+-------+-------------+------+------+----------+------------------------+ 
| id    | int(3)      |      | PRI  | 0        | auto_increment         | 
| name  | char(50)    |      |      |          |                        | 
+-------+-------------+------+------+----------+------------------------+ 
2 rows in set (0.00 sec) 


 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:用SSL构建一个安全的Apache   下一篇:在Linux上搭建WEB服务器:基本概念、PHP

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章