ubuntu 14.04 64位 下 编译安装MySQL 5.7.11

步骤一:
 先去mysql的官方网站 去down 编译源码包

mysql 网址:www.mysql.com

downloads  (MySQL Community Server

下载版本选择  source code  然后找到

Generic Linux (Architecture Independent), Compressed TAR Archive   5.5.29 23.7M
(mysql-5.5.29.tar.gz)

 步骤二:

先要安装几个插件要不然 cmake不成功
1.apt-get install cmake
2.apt-get install   libncurses5-dev (我忘了这个是在哪里需要的了,不是cmake时候就是make的时候,如果你没有安装他会提醒你的注意看输出的信息就行)
3.apt-get install  gcc c++   bison  libaio1 
4. 安装基本编译工具apt-get install build-essential automake autoconf cmake 

5.需要在下boost组件 

https://sourceforge.net/projects/boost/files/boost/  

放到 /usr/local/boost 目录下 

此时boost目录下应该有 boost_1_59_0 文件夹

对下载下来的源码包进行解压 编译安装
 tar zxvf mysql-5.7.11. tar.gz
cd mysql-5.7.11 
 
5.运行以下命令行编译 mysql,比较长,记得编译时是把下面的多行一起复制到命令窗口编译 
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/mysql/data \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DENABLED_LOCAL_INFILE=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/boost/boost_1_59_0

6.make
7.make install 
 //注意新版的mysql 安装完毕以后会自动在 etc下创建一个mysql 文件夹 ,文件夹内有my.cnf配置文件


8. sudo cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf  (复制原mysql的配置文件 作为etc下的配置文件) 
9. 编辑 my.cnf 文件以支持 innodb,(去掉配置文件中前面带#  )去掉#以后的如下:

    [mysqld]
basedir=/usr/mysql
datadir=/usr/mysql/data
user=mysql

 

  1. # Uncomment the following if you are using InnoDB tables  
  2. innodb_data_home_dir = /home/mysql/3306/data  
  3. innodb_data_file_path = ibdata1:10M:autoextend  
  4. innodb_log_group_home_dir = /home/mysql/3306/data  
  5. # You can set .._buffer_pool_size up to 50 - 80 %  
  6. # of RAM but beware of setting memory usage too high  
  7. innodb_buffer_pool_size = 16M  
  8. innodb_additional_mem_pool_size = 2M  
  9. # Set .._log_file_size to 25 % of buffer pool size  
  10. innodb_log_file_size = 5M  
  11. innodb_log_buffer_size = 8M  
  12. innodb_flush_log_at_trx_commit = 1  
  13. innodb_lock_wait_timeout = 50  

10.
 

sudo adduser xxx 这样的命令会在home目录下添加一个帐号
sudo useradd xxx 仅仅是添加用户, 不会在home目录添加帐号

cd /usr/local/mysql

chown -R mysql:mysql . (所有的文件都属组属主)
 11. 
初始化数据库

sudo /usr/local/mysql/scripts/mysql_install_db --defaults-file=/home/mysql/3306/my.cnf --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/3306/data
12.
启动数据库

sudo /usr/local/mysql/bin/mysqld_safe --defaults-file=/home/mysql/3306/my.cnf --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/3306/data &

13.

修改用户名密码,其中的 NEW_PASSWORD 换成你自己想要设置的密码
/usr/local/mysql/bin/mysqladmin -u root password 'YOUR PASSWORD'

关闭数据库使用如下命令


/usr/local/mysql/bin/mysqladmin -u root -p shutdown

14. 做一个符号链接:ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql



15 启动:mysql start...这里遇到一问题:Couldn't find MySQL manager (/usr/bin/mysqlmanager) or server (/usr/bin/mysqld_safe),解决:在/usr/bin下面建立一个/usr/local/mysql/bin/mysqld_safe的软连接。
=========================================================================================================
 如果出现该错误 The server quit without updating PID file (/var/run/mysqld/mysqld.pid). 

请用以下办法进行解决,

然后在/home/mysql/3306/ 下 建立 一个软链接

sudo /etc/my.cnf /home/mysql/3306/

然后在:



sudo vi /etc/init/mysql 

修改:

basedir=/usr/local/mysql
datadir=/home/mysql/3306/data




然后在重启 sudo /etc/init.d/mysql restart

就成功了 

posted @ 2016-03-30 17:36  熊猫linux  阅读(1278)  评论(0编辑  收藏  举报