mysql官网下载地址:https://dev.mysql.com/downloads/mysql/mysql
参考安装:https://blog.51cto.com/snowlai/2140451?source=drac++
一、查看是否有旧版本的mysqlsql
rpm -qa | grep mysql
二、卸载shell
yum remove mariadb-libs.x86_64 (其中mariadb-libs.x86_64为包名)
三、下载mysql压缩包数据库
https://dev.mysql.com/downloads/mysql/ 注意:下载带boost的包:mysql-boost-8.0.11.tar.gz
四、安装依赖包(root用户下)bootstrap
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
五、建立mysql用户及组,只用于服务,不可用于登陆(root用户下)centos
groupadd mysql useradd -g mysql mysql -M -s /sbin/nologin
六、检查包的完整性bash
md5sum mysql-boost-8.0.11.tar.gz
七、解压mysql包(root权限)socket
tar -zxvf mysql-boost-8.0.11.tar.gz -C /usr/local
八、运行cmakecentos7
cmake \ -DFORCE_INSOURCE_BUILD = 1\ -DDOWNLOAD_BOOST=1 \ -DWITH_BOOST=/usr/local/src/mysql-8.0.17/boost \ -DWITH_DEBUG=1 \ -DCMAKE_INSTALL_PREFIX=/usr/local/src/mysql-8.0.17/mysql \ -DMYSQL_DATADIR=/usr/local/src/mysql-8.0.17/mysql/data \ -DSYSCONFDIR=/etc \ -DEFAULT_CHARSET=utf8mb4 \ -DDEFAULT_COLLATION=utf8mb4_general_ci \ -DENABLED_LOCAL_INFILE=1 \ -DEXTRA_CHARSETS=all cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DMYSQL_TCP_PORT=3306 -DWITH_BOOST=/usr/local/mysql-8.0.17/boost 解释其含义: DCMAKE_INSTALL_PREFIX=/usr/local/mysql #cmake预编译 DMYSQL_DATADIR=/usr/local/mysql/data #MySQL数据库存放路径 DSYSCONFDIR=/etc #配置文件路径 DWITH_MYISAM_STORAGE_ENGINE=1 #开启MYISAM引擎支持 DWITH_INNOBASE_STORAGE_ENGINE=1 #开启InnoDB引擎支持 DWITH_MEMORY_STORAGE_ENGINE=1 #开启MEMORY引擎支持 DWITH_PARTITION_STORAGE_ENGINE=1 #开启PARTITION引擎支持 DWITH_READLINE=1 #启用快捷键功能 DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock #socket通讯文件为至 DMYSQL_TCP_PORT=3306 #MySQL监听端口 DMYSQL_USER=mysql #mysql运行用户 DENABLED_LOCAL_INFILE=1 #容许从本地导入数据 DEXTRA_CHARSETS=all #安装全部扩展字符集 DDEFAULT_CHARSET=utf8 #默认字符集为utf8 DDEFAULT_COLLATION=utf8_general_ci #检查字符
九、删除或重命名CMakeCache.txt
mv CMakeCache.txt CMakeCache.txt.bk
十、编译
make make install
十一、切换目录/usr/local/mysql/bin下,初始化mysql,此时用户名密码为空
./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
十二、配置启动脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig mysqld on
1三、启动mysql
service mysqld start 输出结果:Starting MySQL SUCCESS!
1四、验证进程
ps -ef | grep mysqld
1五、本机登陆数据库
./mysql -uroot -p
1六、查看使用的数据库引擎
mysql> SHOW ENGINES;
1七、查看建立的数据库
mysql> show databases;
1八、更新数据库用户名密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NEW_PASSWORD'; ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; flush privileges;
QA
Q一、出现以下问题,是gcc版本太低
A:
一、gcc版本太低,mysql8.X版本要求gcc版本为5.3以上版本,centos7默认gcc版本为4.8
升级到6.3
yum -y install centos-release-scl
yum -y install devtoolset-6-gcc devtoolset-6-gcc-c++ devtoolset-6-binutils
scl enable devtoolset-6 bash
//注意:此时 若是关闭shell则gcc会恢复原来版本号
echo "source /opt/rh/devtoolset-7/enable" >>/etc/profile
//执行这句后 则长期更改成6.3版本
二、更新cmake3
一、下载cmake3
wget https://cmake.org/files/v3.10/cmake-3.10.0-rc3.tar.gz
二、解压cmake源码包
tar -zxvf cmake-3.10.0-rc3.tar.gz
三、进入目录,设置,编译,连接
cd cmake-3.10.0-rc3/
./bootstrap
gmake
gmake install
四、编译
hash -r
五、查看版本
cmake --version