作者:blacktulip 来源:网贝   酷勤网收集 2008-06-22

摘要
  测试Apache服务器成功以后,就要开始安装数据库。首先要创建一个用户组和至少一个数据库用户。然后正式开始安装过程,然后又是源码安装三步曲,然后,很费解的一步,需要手动把一个配置文件的模板拷贝到配置文件目录里…为啥安装的时候不自动拷过去呢?

上一篇描述了安装http服务器Apache的过程,这篇说说怎么折腾MySQL。

书接上一回,测试Apache服务器成功以后,就要开始安装数据库。首先要创建一个用户组和至少一个数据库用户。方法为:

groupadd mysql          //创建一个组名为mysql的用户组.
useradd –g mysql mysqluser1          //创建一个名为mysqluser1的用户,令其隶属于mysql组

然后正式开始安装过程:

cd /          //回到根目录
wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.51b.tar.gz/from/http://mysql.osuosl.org/          //下载mysql 5.0.51b源代码
tar zxvf mysql-5.0.51b.tar.gz          //解压
cd mysql-5.0.51b.tar.gz          //进入源码目录

yum install ncurses-devel          //ncurses开发包必须先行安装,否则MySQL配置安装时会出错

然后又是源码安装三步曲:

./configure –prefix=/usr/local/mysql           //配置MySQL的安装,prefix不指定也可。make          //编译make install          //安装

然后,很费解的一步,需要手动把一个配置文件的模板拷贝到配置文件目录里…为啥安装的时候不自动拷过去呢?总之是要输入一条命令:

cp support-files /my-medium.cnf /etc/my.cnf         //创建配置文件,以后/etc/my.cnf就是MySQL的配置文件了,要改MySQL的配置就找它。

接下来,第一次运行MySQL之前,要创建MySQL授权表,方法如下:

cd /usr/local/mysql           //进入MySQL目录

bin/mysql_install_db –user=mysqluser1          //创建授权表,授权给mysqluser1(就是本文开头创建的那个用户)。

chown –R root .          //注意命令最后的点,表示当前目录。此命令把当前目录下文件属性改为root用户。

chown –R mysqluser1 var          //把数据目录的属性改成mysqluser1这个用户。

chgrp –R mysql .          //注意最后的点,这是把组属性改成mysqlgroup组。

这些手续办完以后,就可以启动MySQL并进行测试了,启动命令如下:

/usr/local/mysql/bin/mysqld_safe –user=mysqluser1 &          //启动MySQL,注意最后的&符号,不加这个符号的话也行,但你这个ssh进程就给占了,得另开一个。mysqlshow

启动成功了吧,恭喜恭喜,现在我们来测试一下。首先确认自己在/usr/local/mysql目录下,然后

bin/mysqlshow          //显示MySQL里面的数据库列表

如过你看到一个类似右图的表格,就成功了。

下一步,我们必须做一些安全措施。因为在缺省安装过程中,MySQL会创建两个匿名用户,同时root用户的密码也是空的,这简直就是不设防。所以需要把该加的密码加上,把匿名用户给删掉。

bin/mysql –u root          //以root帐号登入MySQL,执行后,命令提示符会变成mysql>这个样子

DELETE FROM mysql.user WHERE User=”;          //把匿名帐户选出来删掉,注意User=后面是两个单引号一个分号,不是一个双引号一个分号。

FLUSH PRIVILEGES;          //重读授权表使上一条命令生效。

Quit          //退出MySQL命令行

下一步,要把root用户加上密码,方法为:

bin/mysql –u root           //以root帐号登入MySQL

SET PASSWORD FOR ‘root’@'localhost’ = PASSWORD(’你的密码’);          //给以localhost连接的root帐号设置密码,“你的密码”改成你的密码哦…别忘了最后有个分号。
‘root’@'主机名’ = PASSWORD(’你的密码’);          //给用主机名连接的root帐号设置密码。主机名改成你自己的主机名。

Quit          //退出MySQL命令行

SET PASSWORD FOR

现在把刚创建的mysqluser1给予数据库访问权限,然后用同样的方法把mysqluser1这个用户的密码也加上。

bin/mysql –u root  -p         //以root帐号登入MySQL,注意这次用了-p参数,因为root帐号已经有密码保护了,直接连就连不上,必须用-p参数,执行这行命令后,会提示你输入密码。

GRANT ALL PRIVILEGES ON *.* TO ‘mysqluser1′@’localhost’           //给予mysqluser1用localhost连接数据库的所有权限。为安全起见,不需要给予用户远程连接数据库的权限。执行这条命令后,提示符会变成->形状,继续输入下一条指令:
IDENTIFIED BY ‘这里放一个密码’ WITH GRANT OPTION;          //设置数据库用户mysqluser1的连接密码。注意最后有分号。

(以下两行命令非必须,而且不安全,实在有需要才用)

GRANT ALL PRIVILEGES ON *.* TO ‘mysqluser1′@’*'            //给予mysqluser1远程连接数据库权限。接着输入下一条:

 

IDENTIFIED BY ‘这里放一个密码’ WITH GRANT OPTION;          //设置远程数据库用户mysqluser1的连接密码。注意最后有分号

Quit          //退出MySQL命令行

终于接近尾声了,最后我们来看看如何设置开机自动启动MySQL。

cd /mysql-5.0.51b.tar.gz          //回到源码目录,希望你还没有删…

cp support-files/mysql.server /etc/rc.d/init.d/          //把启动脚本放在Linux的启动文件夹中。注意启动文件夹不一定在/etc/rc.d/init.d/这个位置,你只要找/etc下面的init.d这个目录就是了。

好了,MySQL已经装好,LAMP只剩最后一个PHP了,且让我休息一下,下回接着说。

参考资料: MySQL 5.1参考手册

来自:在VPS上搭建LAMP环境之MySQL篇

分类: 站长经验 Web开发 网页设计

上一篇:在VPS上搭建LAMP环境之Apache篇   下一篇:BlogOhBlog新作 — Firebug主题For WordPress