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.安装cmake3.6.1
解压:
tar -zxvfcmake-3.6.1.tar.gz
mv cmake3.6.1 /mydata/app/cmake
安装:
./bootstrap
make
make install
6.安装 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
7.安装依赖包
yum install gcc gcc-c++ ncurses ncurses-devel bison libgcrypt perl
8.配置组和用户
groupadd MysqL
useradd MysqL -s /sbin/nologin -M -g MysqL (不允许登录的用户名)
mkdir /mydata/app/MysqL (存储MysqL可执行文件)
mkdir /mydata/MysqL (存储MysqL数据文件)
设置权限:
chown -R MysqL:MysqL /mydata/app/MysqL/.
chown -R MysqL:MysqL /mydata/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 \
-DMysqL_USER=MysqL \
-DMysqL_TCP_PORT=3306 \
-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/MysqLchmod +x /etc/init.d/MysqL
chkconfig --add MysqL
chkconfig MysqL on
my.cnf配置大小写不敏感:
vi /etc/my.cnf 添加如下内容,lower_case_table_names=1
13.设置root密码(非必需步骤),当root没有密码无法登录时
# 先停止MysqL服务
service MysqL stop
# 以安全模式启动MysqL
MysqLd_safe --skip-grant-tables
MysqL -u root
# 设置密码
use MysqL;
update user set authentication_string=PASSWORD("123456") where User='root';
# 停止MysqL
service MysqL stop
# 重启MysqL
service MysqL start
# 使用root登录
MysqL -uroot -p123456
# 此时使用use MysqL;打开数据库,会提示密码有问题,使用下面的语句设置一次密码就可以正常使用了
SET PASSWORD = PASSWORD('123456');
- 出错问题
1.ERROR! The server quit without updating PID file (/mydata/MysqL/iZ94vn5dxu3Z.pid)
可能问题:
a.权限,上面有设置权限的命令。
b.datadir有问题,使用MysqLd --initialize --console初始化相关基础数据库(先创建datadir,为空就行了)
原文链接:https://www.f2er.com/centos/378086.html