欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

centos7初始化mysql 5.7.9(源码安装) 博客分类: mysql mysqlSQL Server数据挖掘 

程序员文章站 2024-03-22 20:30:58
...


1 下载源码包
1.1安装文件准备
下载cmake-3.2.2.tar.gz …新版的MySQL用CMAKE编译安装
http://www.cmake.org/download/
1) .下载ncurses-6.0.tar.gz …安装MySQL 时需要
ftp://ftp.gnu.org/gnu/ncurses/
2) .下载bison-3.0.4.tar.gz …安装MySQL 时需要
http://ftp.gnu.org/gnu/bison/
3) .下载mysql-5.7.9.tar.gz —MySQL的源码编译包不要下载错
ftp.mysql.com/Downloads/MySQL-5.7/mysql-5.7.9.tar.gz

  请尊重知识,请尊重原创 更多资料参考请见  http://www.cezuwang.com/listFilm?page=1&areaId=906&filmTypeId=1


2、安装CMAKE及必要的软件
1).安装CMAKE
cd /usr/local/src
tar -zxv -f cmake-3.2.2.tar.gz
cd cmake-3.2.2
./bootstrap
gmake
gmake install
vi /etc/profile …修改环境变量在文件末尾追加以下两行代码
PATH=/usr/local/bin:$PATH export PATH
source /etc/profile …使修改生效
cmake - version ---查看cmake 版本
2).安装ncurses
cd /usr/local/src
tar -zxvf ncurses-6.0.tar.gz
cd ncurses-6.0
./configure
make
make install
3).安装bison
cd /usr/local/src
tar -zxvf bison-3.0.4.tar.gz
cd bison-3.0.4
./configure
make
make install
注:也可以用yum 安装比较省事: yum-y install ncurses-devel cmake


2.1新建mysql用户、组及目录
---新建一个msyql 组
groupadd mysql
…新建msyql 用户禁止登录shell
useradd -r -g mysql mysql
…创建目录
mkdir /usr/local/mysql
…数据仓库目录
mkdir /usr/local/mysql/data


下载一个boot包  放在/usr/local/boot目录下
http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz

2.2 cmake 操作

cd /program/mysql/mysql-5.7.9/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-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=/usr/local/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DENABLE_DOWNLOADS=1 \
-DWITH_BOOST=/usr/local/boot/boost_1_59_0

cmake 这一步我们可以直接指定boost路径也可以 进入boost路径下进行安装 安装命令如下
shell> tar jxvf boost_1_59_0.tar.gz
shell> cd boost_1_59_0/
shell> ./bootstrap.sh
shell> ./b2 install

3、cmake结束后开始编译源码,这一步时间会较长,请耐心等待。
make
4、安装编译好的程序
make install

5 初始化mysql
  mkdir /usr/local/mysql/temp
  chown mysql -R /usr/local/mysql/temp
  chown mysql -R /usr/local/mysql/data/
 
  
/usr/local/mysql/bin/mysqld --initialize

chown mysql -R  /usr/local/mysql/

mysql 会产生一个随机密码 显示在终端上 frKWhlRht4=r

6 启动mysql
复制启动脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

service mysql start
设置开机自动启动服务
chkconfig mysql on

7 修改默认密码
cd /usr/local/mysql/
mysqladmin -u root -p password
会提示输入随机密码,只要输入上述文件密码即可 此处的随机密码一定是初始化之后 显示在shell终端上的密码。

提示密码修改成功
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety


此时Linux 服务器上的mysql运行正常,但是其他本地服务器还无法访问,需要简单设置。
shell>mysql --user=root -p
输入密码
mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
mysql> select host, user from user;
mysql> service mysql restart;

 

5.7.9 版本需要在my.cnf配置文件新增一下属性,以使用某些特殊sql查询。
 sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'