mysql5.7.12 源码安装

来源:互联网 发布:长期避孕药 知乎 编辑:程序博客网 时间:2024/06/06 12:27

1.安装所需要的包

yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison

2.下载文件

https://cdn.mysql.com//archives/mysql-5.7/mysql-5.7.12.tar.gz

https://jaist.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

3.解压文件,创建文件夹

mkdir /usr/local/mysql

mkdir /data/mysql


4.cmake编译

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDOWNLOAD_BOOST=1 -DWITH_BOOST=../boost_1_59_0 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysql -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1


5.make -j `grep processor /proc/cpuinfo | wc -l` #编译很消耗系统资源,小内存可能编译通不过

6.make install

7.改变文件夹

  1. chown -R mysql:mysql /usr/local/mysql  
  2. chown -R mysql:mysql /data/mysql  


8.

 在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir/my.cnf",在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!注意:在CentOS 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。在使用"yum update"更新系统后,需要检查下/etc目录下是否会多出一个my.cnf,如果多出,将它重命名成别的。否则,MySQL将使用这个配置文件启动,可能造成无法正常启动等问题。

mv /etc/my.cnf /etc/my.cnf.bak

拷贝配置文件模板为新的mysql配置文件

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf  


9.启动数据库

/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql


10.给予远程权限

 grant all PRIVILEGES on *.* to 'root'@'%'  identified by '123456';
 flush privileges;