mysql地址:https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.13-linux-glibc2.12-x86_64.tar
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.13-linux-glibc2.12-x86_64.tar 将mysql8下载到服务器
生成3个mysql子文件,都是tar.xz文件格式的压缩文件 tar.xz是linux自带的压缩格式
然后我们需要的是 mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz 这个mysql主库
用xz -d mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz 解压
得到mysql-8.0.13-linux-glibc2.12-x86_64.tar 文件 此时和我们最开始下载的tar文件重名,因此在XZ解压前,将完整的tar包删除,再用xz -d mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz 解压 得到mysql-8.0.13-linux-glibc2.12-x86_64.tar
再用tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar 解压 得到 mysql-8.0.13-linux-glibc2.12-x86_64
将mysql-8.0.13-linux-glibc2.12-x86_64改名为mysql8
下载编译环境:gcc gcc++ 等,因为以后安装nginx zookeeper 等也需要,所以一次性下载完全
yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake
回到/root目录下安装cmake
解压 tar -zxvf cmake-3.3.2.tar.gz
cd cmake-3.3.2
./bootstrap
gmake
make install
cmake --version
cmake 工具安装完成,然后我们来将mysql编译成linux系统能够识别的二进制文件
输入命令:cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-8.0.13 -DMYSQL_DATADIR=/var/mysqlData/data -DSYSCONFDIR=/etc -DMYSQL_TCP_PORT=3306 -DWITH_BOOST=/usr/local/mysql-8.0.13/boost
在/var目录下创建mysqlData 存放mysql数据库的数据 mkdir mysqlData
在/etc目录下修改my.cnf文件
初始化mysql服务进入 /usr/local/mysql-8.0.13/bin下
./mysqld --initialize --user=mysql --datadir=/var/mysqlData/data
报错说缺少 libaio.so.1
用rpm命令进行检查确实没有发现,那我们就需要下载 yum install libaio-devel.x86_64
报错:说没有mysql这个用户 配置的字符utf8也是错误的 mysqlData/data目录不能自己先行创建
于是我们把这些都修改了 vi /etc/my.cnf
再次初始化 ./mysqld --initialize --user=root --datadir=/var/mysqlData/data
mysql初始化了 但是我们需要修改密码
这时候我们进入/usr/local/mysql-8.0.13/bin目录下 ./mysql -u root -p
提示我们输入密码,我们将上面标红的密码输入,然后发现报错
那么这个错误是什么意思,大概是mysql不能和linux进行通信(我自己脑补的,我们配置文件my.cnf配置过,但查看网上教程,我们需要创建一个软连接)
ln -s /var/mysqlData/data/mysql.sock /tmp/mysql.sock
然后我们将mysql添加到服务器自启动:
cp -v /usr/local/mysql-8.0.13/support-files/mysql.server /etc/init.d/
chkconfig --add mysql.server
然后我们就可以启动mysql了
发生错误:改了很久 都不知道自己在改什么 最后把 data目录删除掉 重新配置了 my.cnf
添加组mysql用户mysql
groupadd mysql
useradd mysql
mysql已经启动
这时我们登陆 ./mysql -u root -p
输入提示的密码 然后进入
修改密码
马赛克处是你设置的密码
设置远程连接
然后开启3306端口
然后用navicat进行链接
其中踩了很多坑,一步一步解决问题确实很有趣,up