CentOS7 源码安装 MySQL 5.6

来源:互联网 发布:魔术教学知乎 编辑:程序博客网 时间:2024/06/05 18:26

[php] view plain copy
  1. 第一部分:目录  
  2.   
  3. 1.准备工作  2. 运行环境     3. 确认你的安装版本  4.下载MySQL  5.安装MySQL    6.准备安装环境    7.编译和安装   8.配置MySQL  
  4.   
  5. 9.单实例配置    10.单实例配置方法  11.添加防火墙    12.启动MySQL   13.重启MySQL   14.实例配置  15.什么是多实例  16.多实例配置方法  
  6.   
  7. 17.创建启动文件   18.初始化数据库   19.配置防火墙   20.启动MySQL   21.登陆MySQL   22.重启MySQL   23.准备工作  24.运行环境  
  8.   
  9.   
  10. 第二部分:确认你的安装版本  
  11.   
  12. mysql分为开发版本和稳定版本(GA),开发版本拥有最新的特性,但是并不稳定,也没有完全经过测试,可能存在严重的bug,而稳定版本是经过了长时间的测试,消除了具有已知的bug,其稳定性和安全性都得到一定的保障。  
  13.   
  14. 对于一个mysql的版本号如:mysql-5.6.1-m1,这个版本号意味着什么呢?  
  15. 1.对于5.6.1的解释:第一个数字5代表了文件格式,第二个数字6代表了发行级别,第三个数字1代表了版本号。更新幅度较小时,最后的数字会增加,出现了重大特性更新时,第二个数字会增加,文件格式改变时,第一个数字会增加   
  16. 2.对于m1的解释:这是用来表明这个mysql版本的稳定性级别的,如果没有这个后缀,那么这个版本就是一个稳定版(GA);如果这个后缀是mN(例如m1,m2)格式,表明了这个版本加入了一些经过彻底测试的新特性,可以认为这是一个试生产的模具;如果这个后缀是rc,表明了这是一个候选版本,已经修改了已知的重要bug,但是没有经过足够长时间的使用来确认所有的bug已经被修复。  
  17.   
  18. 一旦选择了版本号,就要选择使用哪个发行版,你可以使用二进制发行版如RPM包或Zip压缩包等,但是如果你要实现如下的功能,就要选择源码安装(本文正是选择源码安装的方式):  
  19. 1.l把mysq安装到指定位置   
  20. 2.l使用mysql的一些特性(标准的二进制版本中并没有这些特性)如:TCP封包支持,调试mysql   
  21. 3.二进制版本中默认支持所有的字符集,但你可以在编译安装源码时指定字符集,从而使得安装的mysql更小  
  22.   
  23.   
  24. 第三部分:  
  25.   
  26. 1、CentOs7版本默认情况下安装了mariadb-libs,必须先卸载才可以继续安装MySql  
  27.   
  28. 卸载原有MySQL或者Mariadb  
  29.   
  30. 安装程序  
  31. 1、卸载原有MySQL或者Mariadb安装程序  
  32.   
  33. a)  查找以前是否安装mariadb-libs   
  34.   
  35. [root@localhost ~]# rpm -qa | grep -i mariadb-libs  
  36. mariadb-libs-5.5.35-3.el7.x86_64  
  37.   
  38. b)卸载已经安装的mariadb-libs  
  39. [root@localhost ~]# yum remove mariadb-libs-5.5.35-3.el7.x86_64  
  40.   
  41. 2、查找以前是否安装MySQL   
  42. [root@localhost ~]# rpm -qa | grep -i mysql  
  43.   
  44. 如果显示有数据 说明已经安装了 MySQL 程序  
  45.   
  46. a) 停止mysql服务  
  47. [root@localhost ~]# service mysql stop  
  48.   
  49.  或者:  
  50.  [root@localhost ~]# ps -A | grep mysql  
  51.   
  52.  [root@localhost ~]# kill -9 进程号  
  53.   
  54. b)删除之前安装的mysql  
  55.   
  56.  [root@localhost ~]# rpm -ve  文件名称   例如:MySQL-server-5.6.24-1.linux_glibc2.5.x86_64  
  57.   
  58.  [root@localhost ~] # rpm -ve 文件名称   例如:MySQL-client-5.6.24-1.linux_glibc2.5.x86_64  
  59.   
  60. c) 查找之前老版本mysql的目录、并且删除老版本mysql的文件和库  
  61.   
  62.  [root@localhost ~]# find / -name mysql  
  63.   
  64. 【查找结果如下:一下目录是我之前的目录、有可能咱们的目录不一样、不过没关系、按照查找出来的目录删除即可。】  
  65.   
  66.  [root@localhost ~]# find / -name mysql      
  67.   
  68. /var/lib/mysql  
  69.   
  70. /usr/lib64/mysql  
  71.   
  72. /usr/local/mysql  
  73.   
  74. /usr/local/mysql/data/mysql  
  75.   
  76.    
  77.   
  78. 【删除对应的目录】  
  79.   
  80.  [root@localhost ~]# rm -rf /var/lib/mysql  
  81.   
  82.  [root@localhost ~]# rm -rf /usr/lib64/mysql  
  83.   
  84.  [root@localhost ~]# rm -rf /usr/local/mysql   
  85.   
  86. 【删除配置文档】  
  87.   
  88.  [root@localhost ~]# rm -rf /etc/my.cnf  
  89.   
  90. d) 再次查找机器是否安装mysql  
  91.   
  92. [root@localhost ~]# rpm -qa | grep -i mysql  
  93.   
  94. 【无结果,说明已经卸载彻底、接下来直接安装mysql 即可】  
  95.   
  96. 第一步:下载 Mysql   下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads  
  97.   
  98. 下载完后需要检查文件的MD5,以确认是否从官网下载的原版本(以防被人篡改过该软件)  
  99.   
  100.   
  101. 我从windows下载后上传到linux的,密令是 Linux 的 rz   然后在使用md5sum命令来检查:加密的字符串 是否跟当时自己下载的一致、一致代表没问题、否则请重新下载。  
  102.   
  103. [root@localhost ~]# md5sum mysql-5.6.32.tar.gz  
  104. cca05ccb4b64ad0addc8fa5c3b9e1619  mysql-5.6.32.tar.gz  
  105.   
  106.   
  107. 第二步:安装mysql         准备安装环境              首先再次检查是否已经安装过mysql:  
  108.   
  109. [root@localhost wengpengle]# rpm -qa | grep mysql  
  110.   
  111. //有的话就卸载掉以前安装的mysql:  
  112.   
  113. [root@localhost ~]# rpm -e --nodeps xxx(xxx是搜索结果)  
  114.   
  115. //并删除所有的相关文件:  
  116.   
  117. /etc/my.cnf  
  118.   
  119. 第三步:编译和安装     安装编译代码所需要的包有以下。一下的包centos7 自带的都有、我建议在重新安装或者是更新一下。  
  120.   
  121. 1.安装 所需小环境  
  122.   
  123. [root@localhost ~]# yum -y install make bison-devel ncures-devel libaio  
  124.   
  125. [root@localhost ~]# yum -y install libaio libaio-devel  
  126.   
  127. [root@localhost ~]# yum -y install perl-Data-Dumper  
  128.   
  129. [root@localhost ~]# yum -y install net-tools  
  130.   
  131. 2.安装bison  
  132.   
  133. bison下载地址:http://www.gnu.org/software/bison/  
  134.   
  135.    
  136.   
  137. [root@localhost ~]# tar zxvf bison-2.5.tar.gz   
  138.   
  139. [root@localhost ~]# cd bison-2.5   
  140.   
  141. [root@localhost ~]# ./configure   
  142.   
  143. [root@localhost ~]# make   
  144.   
  145. [root@localhost ~]# make install   
  146.   
  147. 3.安装gcc-c++  
  148.   
  149. gcc-c++下载地址:http://www.gnu.org/software/gcc/  
  150.   
  151.    
  152.   
  153. [root@localhost ~]# tar zxvf gcc-c++-4.4.4.tar.gz   
  154.   
  155. [root@localhost ~]# cd gcc-c++-4.4.4   
  156.   
  157. [root@localhost ~]#./configure   
  158.   
  159. [root@localhost ~]# make   
  160.   
  161. [root@localhost ~]# make install   
  162.   
  163. 4.安装cmake  
  164.   
  165. cmake下载地址:http://www.cmake.org/  
  166.   
  167.    
  168.   
  169. [root@localhost ~]# tar zxvf cmake-2.8.4.tar.gz   
  170.   
  171. [root@localhost ~]# cd cmake-2.8.4   
  172.   
  173. [root@localhost ~]#./configure   
  174.   
  175. [root@localhost ~]# make   
  176.   
  177. [root@localhost ~]# make install   
  178.   
  179. 5.安装ncurses  
  180.   
  181. ncurses下载地址:http://www.gnu.org/software/ncurses/  
  182.   
  183.    
  184.   
  185. [root@localhost ~]# tar zxvf ncurses-5.8.tar.gz   
  186.   
  187. [root@localhost ~]# cd ncurses-5.8   
  188.   
  189. [root@localhost ~]#./configure   
  190.   
  191. [root@localhost ~]# make   
  192.   
  193. [root@localhost ~]# make install   
  194.   
  195.   
  196. 第四步:解压刚刚下载的Mysql安装包    
  197.   
  198. [root@localhost ~]#tar -zxvf mysql-5.6.32.tar.gz  
  199.   
  200. 第五步:编译安装  
  201.   
  202. [root@localhost mysql-5.6.32]# cmake \-DCMAKE_INSTALL_PREFIX=/usr/local/mysql56 -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc/my.cnf  -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci  
  203.   
  204. 以下是每一个的解释  
  205.   
  206. # -DCMAKE_INSTALL_PREFIX=/usr/local/mysql56  \    #安装路径  
  207.   
  208. # -DMYSQL_DATADIR=/usr/local/mysql/data      \    #数据文件存放位置  
  209.   
  210. # -DSYSCONFDIR=/etc                         \    #my.cnf路径  
  211.   
  212. # -DWITH_MYISAM_STORAGE_ENGINE=1            \    #支持MyIASM引擎  
  213.   
  214. # -DWITH_INNOBASE_STORAGE_ENGINE=1          \    #支持InnoDB引擎  
  215.   
  216. # -DWITH_MEMORY_STORAGE_ENGINE=1            \    #支持Memory引擎  
  217.   
  218. # -DWITH_READLINE=1                         \    #快捷键功能(我没用过)  
  219.   
  220. # -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock        \    #连接数据库socket路径  
  221.   
  222. # -DMYSQL_TCP_PORT=3306                     \    #端口  
  223.     
  224. # -DENABLED_LOCAL_INFILE=1                  \    #允许从本地导入数据  
  225.   
  226. # -DWITH_PARTITION_STORAGE_ENGINE=1         \    #安装支持数据库分区  
  227.   
  228. # -DEXTRA_CHARSETS=all                      \    #安装所有的字符集  
  229.   
  230. # -DDEFAULT_CHARSET=utf8                    \    #默认字符  
  231.   
  232. # -DDEFAULT_COLLATION=utf8_general_ci  
  233.   
  234. [root@localhost ~] make && make install  
  235. 至此 MySQL 安装完成  
  236.   
  237. 第六步:配置mysql  
  238.   
  239. 检查系统是否已经有mysql用户,如果没有则创建  
  240.   
  241. [root@localhost mysql-5.6.32]# cat /etc/passwd | grep mysql  
  242. [root@localhost mysql-5.6.32]# cat /etc/group | grep mysql  
  243.   
  244. 创建mysql用户(但是不能使用mysql账号登陆系统)  
  245.   
  246. [root@localhost mysql-5.6.32]# groupadd mysql -s /sbin/nologin  
  247. [root@localhost mysql-5.6.32]# useradd -g mysql mysql  
  248.   
  249. 修改权限  
  250.   
  251. [root@localhost mysql-5.6.32]# chown -R mysql:mysql /usr/local/mysql  
  252.   
  253. 至此 配置完成  
  254.   
  255. 7.完成后,继续下面的操作  
  256.   
  257. # cd /usr/local/mysql   
  258.   
  259. chown -R mysql:mysql .    (#这里最后是有个.的大家要注意# 为了安全安装完成后请修改权限给root用户)  
  260.   
  261. # scripts/mysql_install_db --user=mysql    (先进行这一步再做如下权限的修改)  
  262.   
  263. chown -R root:mysql .     (将权限设置给root用户,并设置给mysql组, 取消其他用户的读写执行权限,仅留给mysql "rx"读执行权限,其他用户无任何权限)  
  264.   
  265. chown -R mysql:mysql ./data    (数据库存放目录设置成mysql用户mysql组)  
  266.   
  267. chmod -R ug+rwx  .     (赋予读写执行权限,其他用户权限一律删除仅给mysql用户权限)  
  268.   
  269.    
  270.   
  271. 下面的命令是将mysql的配置文件拷贝到/etc  
  272.   
  273. # cp support-files/my-default.cnf  /etc/my.cnf  
  274.   
  275. (5.6之前的版本用如下命令)  
  276.   
  277. # cp support-files/my-medium.cnf /etc/my.cnf  (5.6之前的版本是此操作,读者也可在此时自己进入support-files文件夹下面,看是配置文件的真正名称,那个存在,就拷贝那个。。)  
  278.   
  279. 修改my.cnf配置  
  280.   
  281.    # vi /etc/my.cnf  
  282.   
  283.       
  284.   
  285. #[mysqld] 下面添加:  
  286.   
  287.  user=mysql  
  288.   
  289.     datadir=/data/mysql  
  290.   
  291.  default-storage-engine=MyISAM  
  292.   
  293.    
  294. 8.启动mysql  
  295.   
  296. # bin/mysqld_safe --user=mysql &        或者直接进入bin文件夹下面  
  297.   
  298. # cd bin  
  299.   
  300. #./mysqld                              \ 这里说明,mysqld_safe或者mysqld都可以启动的  
  301.   
  302. 启动mysql,看是否成功   
  303.   
  304. # ps –ef|grep mysql  
  305.   
  306.    
  307.   
  308.    
  309.   
  310. # netstat -tnl|grep 3306   
  311.   
  312. 上面是一种启动mysql的方法,还有一种简单的方便,如下:  
  313.   
  314. 将mysql的启动服务添加到系统服务中   
  315.   
  316. # cp support-files/mysql.server  /etc/init.d/mysql   
  317.   
  318. 现在可以使用下面的命令启动mysql   
  319.   
  320. # service mysql start   
  321.   
  322. 停止mysql服务   
  323.   
  324. # service mysql stop   
  325.   
  326. 重启mysql服务   
  327.   
  328. # service mysql restart  
  329.   
  330. 9.修改root用户密码  
  331.   
  332.    
  333.   
  334. # chkconfig --add mysql  
  335.   
  336. 修改默认root账户密码,默认密码为空  
  337.   
  338. 修改密码 cd 切换到mysql所在目录  
  339.   
  340. # cd /usr/local/mysql  
  341.   
  342. # ./bin/mysqladmin -u root password  
  343. 回车在接下来的提示中设置新密码即可。。  
  344.   
  345. 最后  
  346.   
  347. # service mysql restart;              (重启mysql服务器)  
  348.   
  349. # cd /usr/local/mysql/bin/        (进入mysql basedir下面的bin中)  
  350.   
  351. # ./mysql                                (开启客户端)  
  352.    



转自:http://blog.csdn.net/wplblog/article/details/52179299

原创粉丝点击