Mysql5.5在linux平台下的編譯安裝

來源:互聯網
上載者:User

   目前各大門戶網站均在一定程度上偏向mysql的使用,加上阿里系倡導的去I/O/E運動,先前一直輕視mysql的觀點必須要改正下,況且做為一個資料庫從業者,必須要熟悉2種以上的rdbms資料庫,因而今後的學習重點依然是oracle,mysql則作為一個延伸方向!本文主要記錄mysql5.5版本在linux平台的編譯安裝過程,mysql在5.1和5.5版本上存在比較大的差別,5.1之後提供了分區表的功能,5.5版本上預設的儲存引擎改為innodb,5.1之前則是myisam

1:安裝必要的rpm包,建立mysql使用者組,本文採用的作業系統平台為rhel5.4

 
  1. [root@dg53 ~]# grep -v '^#' /etc/yum.repos.d/base.repo |grep -v '^$'  
  2. [base]  
  3. name=base 
  4. baseurl=file:///mnt/Server  
  5. gpgcheck=0 
  6. enable=1 
  7.  
  8. [root@dg53 ~]# mount /dev/cdrom /mnt  
  9. mount: block device /dev/cdrom is write-protected, mounting read-only  
  10. [root@dg53 ~]# yum -y install gcc gcc-c++ gcc-g77 autoconf automake \  
  11. zlib* fiex** libxml*  ncurses-devel libmcrypt* libtool-ltdl-devel*  
  12.  
  13. [root@dg53 ~]# id mysql  
  14. uid=27(mysql) gid=27(mysql) groups=27(mysql) 

2:下載cmake和mysql源碼包,進行編譯安裝,mysql5.5版本需要使用cmake編譯

 
  1. [root@dg53 ~]# cd /usr/local/src/tarbag/  
  2. [root@dg53 tarbag]# wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz  
  3. [root@dg53 tarbag]# wget http://downloads.mysql.com/archives/mysql-5.5/mysql-5.5.25.tar.gz  
  4.  
  5. [root@dg53 tarbag]# tar -zxvpf cmake-2.8.4.tar.gz -C ../software/  
  6. [root@dg53 tarbag]# tar -zxvpf mysql-5.5.25.tar.gz -C ../software/  
  7. [root@dg53 tarbag]# cd ../software/cmake-2.8.4/  
  8. [root@dg53 cmake-2.8.4]# ./configure --prefix=/usr/local/cmake2.8.4 && make && make install  
  9.  
  10. [root@dg53 ~]# grep PATH .bash_profile   
  11. PATH=$PATH:$HOME/bin:/usr/local/cmake2.8.4/bin:$PATH  
  12. export PATH  
  13. [root@dg53 ~]# . .bash_profile   
  14.  
  15. [root@dg53 ~]# cd /usr/local/src/software/mysql-5.5.25/  
  16. [root@dg53 mysql-5.5.25]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.5.25 \  
  17. -DMYSQL_DATADIR=/mydata \  
  18. -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \  
  19. -DWITH_INNOBASE_STORAGE_ENGINE=1 \  
  20. -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all \  
  21. -DDEFAULT_CHARSET=utf8 \  
  22. -DDEFAULT_COLLATION=utf8_general_ci \  
  23. -DWITH_DEBUG=0 
  24.  
  25. [root@dg53 mysql-5.5.25]# make && make install 

3:初始化mysql服務

 
  1. [root@dg53 mysql-5.5.25]# cp support-files/my-large.cnf /etc/my.cnf   
  2. [root@dg53 mysql-5.5.25]# cp support-files/mysql.server /etc/init.d/mysqld   
  3. [root@dg53 mysql-5.5.25]# chmod +x /etc/init.d/mysqld   
  4. [root@dg53 mysql-5.5.25]# chkconfig --add mysqld  
  5.  
  6. [root@dg53 mysql-5.5.25]# sh ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql5.5.25/ --datadir=/mydata/  
  7.  
  8. [root@dg53 mysql-5.5.25]# service mysqld start  
  9. Starting MySQL...[  OK  ]  
  10.  
  11. [root@dg53 ~]# echo '/usr/local/mysql5.5.25/include/' >> /etc/ld.so.conf  
  12. [root@dg53 ~]# echo '/usr/local/mysql5.5.25/lib/' >> /etc/ld.so.conf  
  13. [root@dg53 ~]# ldconfig  

4:測試安裝結果

 
  1. [root@dg53 mysql-5.5.25]# /usr/local/mysql5.5.25/bin/mysql  
  2. Welcome to the MySQL monitor.  Commands end with ; or \g.  
  3. Your MySQL connection id is 1  
  4. Server version: 5.5.25-log Source distribution  
  5.  
  6. Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.  
  7.  
  8. Oracle is a registered trademark of Oracle Corporation and/or its  
  9. affiliates. Other names may be trademarks of their respective  
  10. owners.  
  11.  
  12. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.  
  13.  
  14. mysql> select user,password,host from mysql.user;  
  15. +------+----------+---------------+  
  16. | user | password | host          |  
  17. +------+----------+---------------+  
  18. | root |          | localhost     |  
  19. | root |          | dg53.yang.com |  
  20. | root |          | 127.0.0.1     |  
  21. | root |          | ::1           |  
  22. |      |          | localhost     |  
  23. |      |          | dg53.yang.com |  
  24. +------+----------+---------------+  
  25. 6 rows in set (0.00 sec)  
  26.  
  27. mysql> show plugins;  
  28. +-----------------------+--------+--------------------+---------+---------+  
  29. | Name                  | Status | Type               | Library | License |  
  30. +-----------------------+--------+--------------------+---------+---------+  
  31. | binlog                | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |  
  32. | mysql_native_password | ACTIVE | AUTHENTICATION     | NULL    | GPL     |  
  33. | mysql_old_password    | ACTIVE | AUTHENTICATION     | NULL    | GPL     |  
  34. | CSV                   | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |  
  35. | MEMORY                | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |  
  36. | MyISAM                | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |  
  37. | MRG_MYISAM            | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |  
  38. | PERFORMANCE_SCHEMA    | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |  
  39. | InnoDB                | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |  
  40. | INNODB_TRX            | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |  
  41. | INNODB_LOCKS          | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |  
  42. | INNODB_LOCK_WAITS     | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |  
  43. | INNODB_CMP            | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |  
  44. | INNODB_CMP_RESET      | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |  
  45. | INNODB_CMPMEM         | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |  
  46. | INNODB_CMPMEM_RESET   | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |  
  47. | partition             | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |  
  48. +-----------------------+--------+--------------------+---------+---------+  
  49. 17 rows in set (0.00 sec)  
  50.  
  51. mysql> show variables like '%default%';  
  52. +------------------------+--------+  
  53. | Variable_name          | Value  |  
  54. +------------------------+--------+  
  55. | default_storage_engine | InnoDB |  
  56. | default_week_format    | 0      |  
  57. +------------------------+--------+  
  58. 2 rows in set (0.00 sec)  
  59.  
  60. mysql> show variables like '%character%';  
  61. +--------------------------+----------------------------------------+  
  62. | Variable_name            | Value                                  |  
  63. +--------------------------+----------------------------------------+  
  64. | character_set_client     | utf8                                   |  
  65. | character_set_connection | utf8                                   |  
  66. | character_set_database   | utf8                                   |  
  67. | character_set_filesystem | binary                                 |  
  68. | character_set_results    | utf8                                   |  
  69. | character_set_server     | utf8                                   |  
  70. | character_set_system     | utf8                                   |  
  71. | character_sets_dir       | /usr/local/mysql5.5.25/share/charsets/ |  
  72. +--------------------------+----------------------------------------+  
  73. 8 rows in set (0.00 sec) 

本文出自 “斬月” 部落格,謝絕轉載!

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.