centos6.5下面编译安装mysql5.7.10版本

 

删除旧的mysql版本

 

1.停止与删除服务

service mysql stop

chkconfig --del mysql

 

2.查看是否已安装:
yum list installed | grep mysql


3.移除已安装:
yum -y remove mysql-libs.x86_64

 

4.删除安装目录以及启动快捷方式(编译安装方式)

rm -rf mysql

rm -rf /etc/rc.d/init.d/mysql

 

 

安装新的mysql版本

 

1.下载mysql5.7.10 source code,选择通用linux版本的source code

http://220.112.193.195/files/11120000007D479D/mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.10.tar.gz

 

2.下载boost,mysql5.7.10需要依赖的一个新东西

http://211.162.127.15/files/4235000001BBBEC9/sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz

 

3.下载cmake3.6.1

https://cmake.org/files/v3.6/cmake-3.6.1.tar.gz

 

4.移除旧的cmake和mysql

rpm -qa | grep cmake

yum -y remove cmake

 

 

rpm -qa | grep mysql

yum -y remove mysql-*

 

5.安装依赖包

yum install gcc gcc-c++ ncurses ncurses-devel bison libgcrypt perl

 

6.安装cmake3.6.1

解压:

tar -zxvf cmake-3.6.1.tar.gz

mv cmake-3.6.1 /mydata/app/cmake

 

安装:

     ./bootstrap
     make
     make install

 

设置环境变量:

    vim /etc/profile

最后加上两行:

    PATH=/mydata/app/cmake/bin:$PATH

    export PATH

环境变量生效:

    source /etc/profile

 

7.安装 boost_1_59_0 

tar -zxvf boost_1_59_0.tar.gz
mv boost_1_59_0 /mydata/app/boost

 

执行安装:

./bootstrap.sh

./b2

./b2 install

 

8.配置组和用户

groupadd mysql

useradd mysql -s /sbin/nologin -M -g mysql  (不允许登录的用户名)

mkdir  /mydata/app/mysql   (存储mysql可执行文件)

mkdir  /mydata/mysql_data        (存储mysql数据文件)

mkdir /mydata/log/mysql    (存储日志)

 

设置权限:

chown -R mysql:mysql /mydata/app/mysql/.
chown -R mysql:mysql /mydata/mysql_data

chown -R mysql:mysql /mydata/log/mysql

 

9.解压mysql

tar -zxvf mysql-5.7.10.tar.gz

 

10.进到解压后的目录,设置编译选项

cmake \
-DCMAKE_INSTALL_PREFIX=/mydata/app/mysql \
-DMYSQL_UNIX_ADDR=/mydata/app/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/mydata/mysql_data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3902 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/mydata/app/boost

 

11.编译安装

make && make install

 

如编辑安装失败,则执下面的命令清除

make clean
rm -f CMakeCache.txt

 

12.配置mysql

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql

 

13.加入环境变量

vim /etc/profile

PATH=/mydata/app/mysql/bin:/mydata/app/mysql/lib:$PATH

 

centos6.5加入服务
chkconfig --add mysql
chkconfig mysql on

 

centos7加入服务

systemctl    enable     mysql    (报错看最后处理方法)

systemctl    restart     mysql.service

ps -ef | grep  mysql        注意看是服务是否开启

 

my.cnf配置大小写不敏感:
vi /etc/my.cnf 添加如下内容,lower_case_table_names=1

 

13.设置root密码(非必需步骤),当root没有密码无法登录时

# 先停止mysql服务

service mysql stop

 

# 以安全模式启动mysql

/usr/local/mysql/bin/mysqld_safe --skip-grant-tables

 

# 开启另一个远程终端,登录mysql

/usr/local/mysql/bin/mysql -u root

 

# 设置密码

 

use mysql;

update user set authentication_string=PASSWORD("123456") where User='root';

flush privileges;

 

# 停止mysql

service mysql stop

 

# 重启mysql

service mysql start

 

# 使用root登录

mysql -uroot -p123456

 

# 此时使用use mysql;打开数据库,会提示密码有问题,使用下面的语句设置一次密码就可以正常使用了

SET PASSWORD = PASSWORD('123456');

 

# 设置密码永不过期

ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

 

# 配置生效

flush privileges;

 

# 给特定IP增加远程访问权限

GRANT ALL PRIVILEGES ON *.* TO root@"111.111.111.225" IDENTIFIED BY "123456";
flush privileges;

 

出错问题

 

1.ERROR! The server quit without updating PID file (/mydata/mysql/iZ94vn5dxu3Z.pid)

可能问题:

a.权限,上面有设置权限的命令。

b.datadir有问题,使用mysqld --initialize --console初始化相关基础数据库(先创建datadir,为空并且设置权限)

/usr/local/mysql/bin/mysql_install_db --user=mysql --datadir=/var/mysql_data --basedir=/usr/local/mysql/

c.错误日志可在my.cnf中配置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值