您的位置:首页 > 其它

Postfix邮件服务器搭建(三)

2015-07-23 13:48 253 查看
安装MySql

添加虚帐户mysql 并同时产生一个 mysql 组。注:如果系统中已有就不必添加了。

[root @test root]# groupadd mysql

[root @test root]# useradd -g mysql mysql

解压缩mysql 安装文件

[root @test root]# cp mysql-5.0.45-linux-i686-glibc23.tar.gz /usr/local

[root @test root]# cd /usr/local

[root @test local]#tar xvzf mysql-5.0.45-linux-i686-glibc23.tar.gz

同样,因为我在图形界面下,所以我就直接在root文件夹里解压好后copy到此目录下 /usr/local

[root @test local]#ln -s mysql-5.0.45-linux-i686-glibc23 mysql

将mysql-5.0.45-linux-i686 链接到当前目录下,并命名为 mysql

[root @test local]# mkdir -p /var/lib/mysql

[root @test local]# chown -R mysql:mysql /var/lib/mysql

初始化 mysql 数据库

[root @test local]# cd mysql

[root @test mysql]#./scripts/mysql_install_db —user=mysql &

修改目录所有权限为mysql 所有

[root @test mysql]#chown -R root .

[root @test mysql]#chown -R mysql:mysql data

[root @test mysql]#chgrp -R mysql .

注:将/var/lib/mysql/mysql.sock 链接到 /tmp 目录下,并保持名称不变,如果不这样做的话,有时候可能mysql 启动时会报错,如 ERROR 200:Can’t connect to local MYSQL server throuht socket /tmp/mysql.sock.

[root @test mysql]#ln -s /var/lib/mysql/mysql.sock /tmp/

启动测试mysql

[root @test mysql]#/usr/local/mysql/bin/safe_mysqld —user= mysql &

复制一个编译目录的脚本,以使 mysql 每次启动时都能自动运行

[root @test mysql]#cp support-files/mysql.server /etc/rc.d/init.d/mysqld

[root @test mysql]#chmod 700 /etc/init.d/mysqld

[root @test mysql]#chkconfig —add mysqld

[root @test mysql]#chkconfig —level 35 mysqld on

[root @ test mysql] # echo “/usr/local/mysql/lib/mysql” >> /etc/ls.so.conf

[root @ test mysql] # ldconfig

说明:在用 /usr/local/mysql/bin/mysqld_safe —user=mysql & 命令启动测试 mysql 时,总是无法启动mysql ,自然也无法进入 mysql ,开始还以为是自己操作失误,然后又重新解压mysql安装文件,重新安装,依然如此,甚是郁闷,最后查看日志 /var/log/mysqld.log,显示:

070829 9:04:08 [ERROR] /usr/local/mysql/bin/mysqld: Can't create/write to file'/var/run/mysqld/mysqld.pid' (Errcode: 13)

070829 9:04:08 [ERROR] Can't start server: can't create PID file: Permission denied

070829 09:04:08 mysqld ended

根据日志提示,查看 /var/run/mysqld 目录,发现该目录下并没有mysqld.pid 文件,查看该目录的文件权限,发现用户所有者即不属于root ,也不属于mysql ,文件所有者显示为27。据此推断,可能是mysql 启动时会向此文件夹内写一些东西,但 mysql 的进程用户mysql 却没有权限写,导致mysql 无法启动,用touch /var/run/mysqld/mysqld.pid 命令创建mysql 所需要文件,chown -R mysql:mysql/var/run/mysqld将/var/run/mysqld
的目录权限转给 mysql。再次用/usr/local/mysql/bin/mysqld_safe —user=mysql & 启动mysql ,没有再报错,用netatst -tlnup 命令,查看mysql 的端口号3306是否启动,已经可以看到3306端口处于监听状态,mysql 启动成功,用/usr/lcoal/mysql/bin/mysql 进入mysql 数据库,没问题。至此 mysql 安装成功。此问题只在 Fedora cora 5 中发现,我在 redhat AS4 中安装 mysql 没有发现这个问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: