星期五, 一月 04, 2008

RedHat AS4 整合MySql5 全过程讲解

1. 卸载RedHat上原有的MySql的老版本.本人AS4上是原有了Mysql4.

       1> 用" rpm -qa | grep mysql " 查看安装了mysql的哪些组件.看清楚有哪些组件名,在第二步卸载中使用.

       2> 用" rpm -evv <组件名> "完全卸载. 其中几个组件说缺少 ***.so.10啥的,就需要用" rpm -e --nodeps <组件名> "强制卸载.到此卸载完毕.

 

2. 安装Mysql5.

      1> 重要!关闭selinux.否则安装的时候,mysql无法连接成功的.关闭方法:更改/etc/selinux/config中的SELINUX=enforcing为SELINUX=disabled。重新启动redhat,用命令sestatus确定selinux已关闭.

      2> 下载mysql5的rpm包(www.mysql.com).本人机器是Red Hat Enterprise Linux 4 RPM (x86).所以在对应的栏目里面下载对应的server和client.

            server:            http://dev.mysql.com/get/Downloads/MySQL-5.0/MySQL-server-standard-5.0.27-0.rhel4.i386.rpm/from/http://mysql.cdpa.nsysu.edu.tw/

            client:             http://dev.mysql.com/get/Downloads/MySQL-5.0/MySQL-client-standard-5.0.27-0.rhel4.i386.rpm/from/http://mysql.cdpa.nsysu.edu.tw/

      3> 使用root用户,用"rpm -ivh <文件名>"安装server,再用"rpm -ivh <文件名>"安装client.

      4> 用"service mysql restart"重新启动mysql.看是否安装成功.

      5> 设置root密码,进入/usr/bin目录,执行"mysqladmin -u root -p password 123456"其中123456就是你的密码. 这个时候会让你输入root密码,默认时为空,直接回车就可以了。用"service mysql restart"重新启动mysql.

      6> 测试,用"mysql -h localhost -u root -p"登陆mysql数据库.用"show databases;"查看数据库.到此MySql5安装完毕.

 

3. 远程访问管理.

      Mysql默认只能本机访问.如果需要其他机器远程访问,需要设置.

       1> 增加一个用户,用来进行远程登陆.用上方法6中的localhost登陆mysql,执行sql语句
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 
增加一个用户名为myuser,密码为mypassword.其中的"%"表示所有机器都可以访问.用上方法4重新启动MySql.

      2> 这样过后,在本机上可以用命令"mysql -h <自己机器的IP> -u myuser -p"来登陆MySql.说明设置成功.

      3> 最重要一点.你这个时候可以发现,在本机器上可以连接MySql.但是在其他机器上用相同方法,会出现" Can't connect to MySQL server on '9.186.100.178' (10065)"的错误.分析原因是AS4的防火墙导致.用下面方法设置防火墙:打开文件/etc/sysconfig/iptables,在最后一条之前加一条:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
然后执行 /etc/init.d/iptables restart. 至此设置AS4防火墙完毕.

      现在,您就可以在其他的机器上用MySql的client端访问该数据库了,登陆方法还是"mysql -h <IP> -u myuser -p".但如果总用这个控制台管理总不爽,建议用一些管理软件管理就很不错了,本人用的是MySQL-Front,很不错的软件.可以试试.大家有什么问题,请指出,谢谢!

没有评论: