使用YUM安装MySQL 5.5(适用于CentOS6.2/5.8及Fedora 17/16平台)

目前CentOS/Red Hat (RHEL) 6.2官方自带的mysql版本为5.1,mysql5.5已经出来了。

相比mysql5.1,mysql5.5不仅在多个方面进行了改进:

 

  • 性能上有了很大提升
  • 默认存储引擎更改为InnoDB
  • CPU多核处理性能提升
  • 复制功能加强,新增半同步复制
  • 增强表分区功能
  • 等等
本文将指导你如何在CentOS/Red Hat (RHEL) 6.2及Fedora 17/16下安装最新版本的社区版本mysql。
如果您要升级mysql,请先备份好你的数据及配置文件再行升级。
 
让我们开始动手吧。
 
step1. 切换到root用户
[plain] view plaincopy
 
  1. su -  
  2. ## OR ##  
  3. sudo -i  
step2. 安装remi软件源
 
Fedora平台
 
[plain] view plaincopy
 
  1. ## Remi Dependency on Fedora 17, 16, 15  
  2. rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm   
  3. rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm  
  4.    
  5. ## Fedora 17 ##  
  6. rpm -Uvh http://rpms.famillecollet.com/remi-release-17.rpm  
  7.    
  8. ## Fedora 16 ##  
  9. rpm -Uvh http://rpms.famillecollet.com/remi-release-16.rpm  
  10.    
  11. ## Fedora 15 ##  
  12. rpm -Uvh http://rpms.famillecollet.com/remi-release-15.rpm  
  13.    
  14. ## Fedora 14 ##  
  15. rpm -Uvh http://rpms.famillecollet.com/remi-release-14.rpm  
  16.    
  17. ## Fedora 13 ##  
  18. rpm -Uvh http://rpms.famillecollet.com/remi-release-13.rpm  
  19.    
  20. ## Fedora 12 ##  
  21. rpm -Uvh http://rpms.famillecollet.com/remi-release-12.rpm  


 
CentOS及Red Hat (RHEL)平台 
[plain] view plaincopy
 
  1. ## Remi Dependency on CentOS 6 and Red Hat (RHEL) 6 ##  
  2. rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm  
  3.    
  4. ## CentOS 6 and Red Hat (RHEL) 6 ##  
  5. rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm  
  6.    
  7. ## Remi Dependency on CentOS 5 and Red Hat (RHEL) 5 ##  
  8. rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm  
  9.    
  10. ## CentOS 5 and Red Hat (RHEL) 5 ##   
  11. rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm  


 
step3. 查看MySQL版本号
 
Fedora 17, 16, 15, 14, 13, 12
[plain] view plaincopy
 
  1. yum --enablerepo=remi list mysql mysql-server  
CentOS 6.2/6.1/6/5.8 and Red Hat (RHEL) 6.2/6.1/6/5.8
[plain] view plaincopy
 
  1. yum --enablerepo=remi,remi-test list mysql mysql-server  

输出:
[plain] view plaincopy
 
  1. Loaded plugins: changelog, fastestmirror, presto, refresh-packagekit  
  2. ...  
  3. remi                                                            | 3.0 kB     00:00       
  4. remi/primary_db                                                 | 106 kB     00:00       
  5. Available Packages  
  6. mysql.i686                               5.5.25-1.fc14.remi                        @remi  
  7. mysql-server.i686                        5.5.25-1.fc14.remi      


 
step4. 安装或升级到MySQL5.5.25
Fedora 17, 16, 15, 14, 13, 12
[plain] view plaincopy
 
  1. yum --enablerepo=remi install mysql mysql-server  
CentOS 6.2/6.1/6/5.8 and Red Hat (RHEL) 6.2/6.1/6/5.8
[plain] view plaincopy
 
  1. yum --enablerepo=remi,remi-test install mysql mysql-server  
step5. 开启mysql服务并配置自启动
Fedora 17/16
[plain] view plaincopy
 
  1. systemctl start mysqld.service   
  2. systemctl enable mysqld.service  

Fedora 15/14/13/12/11, CentOS 6.2/6.1/6/5.8 and Red Hat (RHEL) 6.2/6.1/6/5.8
[plain] view plaincopy
 
  1. /etc/init.d/mysqld start   
  2. ## OR ##  
  3. service mysqld start   
  4. chkconfig --levels 235 mysqld on  
 
step6. MySQL 安全设置
  • 设置(修改)root密码
  • 删除匿名用户
  • 禁用root远程登录
  • 删除测试数据库test
  • 重载权限表
要启用MySQL 安全设置请输入以下命令
[plain] view plaincopy
 
  1. /usr/bin/mysql_secure_installation  
 
输出
[plain] view plaincopy
 
  1. NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL  
  2.       SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!  
  3.    
  4.    
  5. In order to log into MySQL to secure it, we\'ll need the current  
  6. password for the root user.  If you\'ve just installed MySQL, and  
  7. you haven\'t set the root password yet, the password will be blank,  
  8. so you should just press enter here.  
  9.    
  10. Enter current password for root (enter for none):   
  11. OK, successfully used password, moving on...  
  12.    
  13. Setting the root password ensures that nobody can log into the MySQL  
  14. root user without the proper authorisation.  
  15.    
  16. Set root password? [Y/n] Y  
  17. New password:   
  18. Re-enter new password:   
  19. Password updated successfully!  
  20. Reloading privilege tables..  
  21.  ... Success!  
  22.    
  23.    
  24. By default, a MySQL installation has an anonymous user, allowing anyone  
  25. to log into MySQL without having to have a user account created for  
  26. them.  This is intended only for testing, and to make the installation  
  27. go a bit smoother.  You should remove them before moving into a  
  28. production environment.  
  29.    
  30. Remove anonymous users? [Y/n] Y  
  31.  ... Success!  
  32.    
  33. Normally, root should only be allowed to connect from 'localhost'.  This  
  34. ensures that someone cannot guess at the root password from the network.  
  35.    
  36. Disallow root login remotely? [Y/n] Y  
  37.  ... Success!  
  38.    
  39. By default, MySQL comes with a database named 'test' that anyone can  
  40. access.  This is also intended only for testing, and should be removed  
  41. before moving into a production environment.  
  42.    
  43. Remove test database and access to it? [Y/n] Y  
  44.  - Dropping test database...  
  45.  ... Success!  
  46.  - Removing privileges on test database...  
  47.  ... Success!  
  48.    
  49. Reloading the privilege tables will ensure that all changes made so far  
  50. will take effect immediately.  
  51.    
  52. Reload privilege tables now? [Y/n] Y  
  53.  ... Success!  
  54.    
  55. Cleaning up...  
  56.    
  57.    
  58.    
  59. All done!  If you\'ve completed all of the above steps, your MySQL  
  60. installation should now be secure.  
  61.    
  62. Thanks for using MySQL!  


 
【注】:如果您不想启动MySQL 安全设置命令,但至少也得修改一下root用户密码
 
[plain] view plaincopy
 
  1. mysqladmin -u root password [your_password_here]  
  2. ## 示例##  
  3. mysqladmin -u root password myownsecrectpass  

step7. 使用密码连接本地数据库

[plain] view plaincopy
 
  1. mysql -u root -p  
  2. ## OR ##  
  3. mysql -h localhost -u root -p  

step8. 为指定数据库,指定用户配置指定客户端(IP)远程访问

本示例的配置参数如下
[plain] view plaincopy
 
  1. DB_NAME = webdb  
  2. USER_NAME = webdb_user  
  3. REMOTE_IP = 10.0.15.25  
  4. PASSWORD = password123  
  5. PERMISSIONS = ALL  
1. 创建数据库 webdb
[plain] view plaincopy
 
  1. mysql> CREATE DATABASE webdb;  
 
2. 创建用户webdb_user
[plain] view plaincopy
 
  1. mysql> CREATE USER 'webdb_user'@'10.0.15.25' IDENTIFIED BY 'password123';  
 
3.  授权 
[plain] view plaincopy
 
  1. mysql> GRANT ALL ON webdb.* TO webdb_user@'10.0.15.25';  
 
4.  重载权限表  
[plain] view plaincopy
 
  1. mysql> FLUSH PRIVILEGES;  
step9. 配置防火墙开启3306端口
1. 修改/etc/sysconfig/iptables 文件:
[plain] view plaincopy
 
  1. vi /etc/sysconfig/iptables  
2. 在COMMIT之前加入以下内容:
[plain] view plaincopy
 
  1. -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT  
3. 重启Iptables:
[plain] view plaincopy
 
  1. service iptables restart  
  2. ## OR ##  
  3. /etc/init.d/iptables restart  
4. 在客户机上测试远程访问数据库:
[plain] view plaincopy
 
  1. mysql -h dbserver_name_or_ip_address -u webdb_user -p webdb  


 
 
 
********************************************
* 作者:叶文涛 
* 链接:在CentOS/Red Hat (RHEL) 6.2/5.8及Fedora 17/16下的安装MySQL 5.5
* 源文:Install MySQL 5.5.25 on Fedora 17/16, CentOS/Red Hat (RHEL) 6.2/5.8
******************转载请注明来源 ***************

 

posted @ 2014-11-13 11:21  汪少伯  阅读(218)  评论(0编辑  收藏  举报