Centos 6.5 下面 源码编译 安装 Mysql 5.7.13

  1. 云栖社区>
  2. 博客>
  3. 正文

Centos 6.5 下面 源码编译 安装 Mysql 5.7.13

技术小阿哥 2017-11-28 15:59:00 浏览659
展开阅读全文

安装软件依赖包

 

yum -y install gcc gcc-c++ ncurses ncurses-devel cmake


下载软件包 


cd  /usr/local/src 


wget https://downloads.mysql.com/archives/get/file/mysql-5.7.13.tar.gz --no-check-certificate


下载 boost 库,MySQL 5.7.5  开始Boost库是必需的

cd /usr/local/

wget  http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz  --no-check-certificate


 tar zxvf boost_1_59_0.tar.gz


创建安装用户

 

useradd -M -s /sbin/nologin mysql 

 

创建安装目录

 

mkdir -p /usr/local/mysql

 

创建数据目录

 

mkdir   /mysql3306

 

创建配置文件目录

 

mkdir  -p /usr/local/mysql/etc

 

创建数据库日志目录

 

mkdir  -p  /usr/local/mysql/logs 


编译安装


cd  /usr/local/src

tar zxvf mysql-5.7.13.tar.gz

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/mysql3306/ \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/boost_1_59_0


make && make install 

生成配置文件

 

创建 配置文件目录


mkdir -p /usr/local/mysql/etc 


cp support-files/my-default.cnf etc/my.cnf


编辑配置文件 


wKiom1kQaqmRje_QAABGw-Snr6c524.png-wh_50


修改安装目录的权限

chown -R mysql:mysql /usr/local/mysql/


拷贝配置文件的启动脚本


cp /app/mysql/mysql/support-files/mysql.server /etc/init.d/mysqld


将mysql 命令加入到环境变量


export PATH=$PATH:/usr/local/mysql/bin


wKiom1kQZkuRrBIjAAAdFTmDdr4447.png-wh_50

source /etc/profile 


初始化数据库设置


./mysqld --initialize-insecure


启动数据库 


/etc/init.d/mysqld start 


数据库报错 


 /etc/init.d/mysqld start 
Starting MySQL.The server quit without updating PID file (/[FAILED]l/mysql/mysqld.pid).


查看错误日志


wKioL1kQayfjGS8ZAABeLQO1RCo053.png-wh_50


解决方法 


chown -R mysql:mysql  /mysql3306


登录并查看数据库,默认安装完的数据库没有密码


wKioL1kQa7DT79wjAAAdd5V1PQE614.png-wh_50


给数据库设置密码 


版本更新后,原来user里的password字段已经变更为authentication_string


登录MySQL


mysql> update mysql.user set authentication_string=password('123qwe') where user='root' and Host = 'localhost';
Query OK, 1 row affected, 1 warning (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql> flush privileges;


登录验证


wKiom1kQbPXBjh0nAABbgRXAUqA413.png-wh_50




本文转自 水滴石川1 51CTO博客,原文链接:http://blog.51cto.com/sdsca/1923430,如需转载请自行联系原作者

网友评论

登录后评论
0/500
评论
技术小阿哥
+ 关注