linuxcentos7安装mysql8的教程⼀、RPM版安装
查看是否有其他版本的数据库,若有,删除⼲净
⾮root⽤户必须要有sudo权限
1.下载mysql相关安装包
2.其他依赖(可以先跳过该步,看后⾯安装mysql时缺少什么依赖就安装什么依赖)
到该⽹址下去寻gcc、gcc-c++、openssl、perl及其依赖包
3.安装mysql(未报错则表⽰安装成功)
4.⾃定义配置mysql(如果不想改变mysql的默认相关⽬录,跳⾄第6步)
修改Mysql默认的配置⽂件内容
sudo vi /etc/myf
删除所有内容,加⼊以下内容:
[mysqld]
user=mysql
port=3306
datadir=/app/mysql/data
socket=/app/mysql/mysql.sock
log-error=/app/mysql/log/mysqld.log
pid-file=/app/mysql/mysqld.pid
[client]
socket=/app/mysql/mysql.sock
5.创建配置⽂件中的相关⽬录并修改权限
sudo mkdir /app/mysql/data /app/mysql/log -p
sudo chown mysql:mysql /app/mysql -R
6.初始化mysql
7.启动mysql
若启动出错:
a.请查看mysql相关⽬录的所属⽤户和所属组是否是mysql
b.请查看selinux是否关闭:执⾏sudo getenforce得到的结果若不是Permissive,执⾏命令:sudo setenforce 0
c.查看端⼝是否被占⽤
d.若还是⽆法启动:请查看mysql错误⽇志以及sudo systemctl status mysqld或者journalctl -xe
8.登录mysql
查看Mysql的初始密码(root@localhost:后⾯的就是初始密码)
sudo cat /app/mysql/log |grep root@localhost (做过第4步使⽤该命令)
sudo cat /var/log/mysqld.log|grep root@localhost (未做过第4步使⽤该命令)
登录mysql,复制上⾯的密码mysql下载后安装中出现提示不到安装包
mysql -p
9.修改mysql密码(初次登录必须修改密码,否则⽆法使⽤mysql命令)
alter user 'root'@'localhost' identified by '你的密码';
⼆、源码版安装
⾮root⽤户必须要有sudo权限
1.下载相关源码包
2.安装低版本的gcc、gcc-c++(必须要做,否则升级gcc安装m4/gmp/mpfr/mpc时configure会报错:configure: error: no acceptable C compiler found in $PATH)
3.安装源码版cmake
必须安装openssl和openssl-devel依赖,下载⽹址同上,否则bootstrap会报错:不到openssl(能连外⽹的可以直接使⽤命令:sudo yum -y install openssl openssl-devel)
tar cmake-3.
cd cmake-3.16.1
sudo ./bootstrap
sudo make
sudo make check
sudo make install
4.升级gcc、gcc-c++
a.安装m4
tar -xzvf
cd m4-1.4.17/
sudo ./configure --prefix=/usr/local(--prefix指定安装路径)
sudo make (编译)
sudo make check (检查编译是否有错,注意是否有Error,可以不做)
sudo make install (安装)
m4 --version (查看m4版本)
正确安装后可以看到如下结果
b.安装gmp
sudo ln -s /usr/local/bin/m4 /usr/bin (把m4做⼀个软连接到此路径下,否则configure时会报错:checkin
g for configure: error: No usable m4 in $PATH or /usr/5bin (see config.log for reasons).)
tar -xvf gmp-6.2.
cd gmp-6.2.0
sudo ./configure --prefix=/usr/local/gmp-6.2 (⾮管理员必须要sudo,否则会报错:Permission denied)
sudo make
sudo make check
sudo make install
c.安装mpfr
tar -xzvf mpfr-4.0.
cd mpfr-4.0.2
sudo ./configure --prefix=/usr/local/mpfr-4.0 --with-gmp=/usr/local/gmp-6.2 (--with-gmp为gmp的安装⽬录)
sudo make
sudo make check
sudo make install
d.安装mpc
tar -xzvf mpc-1.1.
cd mpc-1.1
sudo ./configure --prefix=/usr/local/mpc-1.1 --with-gmp=/usr/local/gmp-6.2 --with-mpfr=/usr/local/mpfr-4.0
sudo make
sduo make check
sudo make install
e.加⼊库⽂件(/usr/local/mpfr-4.0/lib/必须加⼊库⽂件,其他两个可以不做,否则安装升级gcc编译时会报错:error while loading shared libraries: libmpfr.so.6: cannot open shared object file: No such file or directory)
sudo vi /etc/f
/usr/local/mpfr-4.0/lib/
/usr/local/gmp-6.2/lib
/usr/local/mpc-1.1/lib
sudo ldconfig (使上⾯的操作⽣效)
或者做软连接
sudo ln -s /usr/local/mpfr-4.0/lib/libmpfr.so.6 /usr/bin
或者复制
sudo cp /usr/local/mpfr-4.0/lib/libmpfr.so.6 /usr/bin/
f.安装其他依赖(系统未安装依赖包时,必须要装,否则升级gcc编译时会报错:mpc.h:没有那个⽂件或⽬录)
下载gmp-devel和libmpc-devel及其依赖包(能连外⽹的可以直接使⽤命令:sudo yum -y install gmp-devel libmpc-devel)
g.升级gcc
tar -xzvf gcc-9.2.
cd gcc-9.2.0
sudo ./configure --prefix=/usr/local/gcc-9.2 \
--enable-bootstrap\
--enable-checking=release \
--enable-languages=c,c++ \
--enable-threads=posix \
--disable-checking\
--disable-multilib\
--enable--long-long\
--with-gmp=/usr/local/gmp-6.2\
--with-mpfr=/usr/local/mpfr-4.0\
--with-mpc=/usr/local/mpc-1.1
sudo make (编译时间较长,1个⼩时的样⼦)
sudo make check
sudo make install
务必卸载低版本的gcc、gcc-c++
sudo rpm -e gcc-c++
sudo rpm -e gcc
sudo vi /etc/profile export PATH=$PATH:/usr/local/gcc/bin
  source /etc/profile
查看gcc版本号
gcc --version
5.安装源码版mysql
安装ncurses-devel依赖,否则cmake报错:Curses library not found.Please install appropriate package(能连外⽹的可以直接使⽤命令:sudo yum -y install ncurses-devel,不能连上外⽹的下载地址同第2步⼀样) tar -xzvf mysql-8.0.
cd mysql-8.0.19
cmake . -DCMAKE_INSTALL_PREFIX=/app/mysql\
-DDEFAULT_CHARSET=utf8\
-DDEFAULT_COLLATION=utf8_general_ci\
-DENABLED_LOCAL_INFILE=ON\
-DWITH_SSL=system\
-DMYSQL_DATADIR=/app/mysql/data\
-DSYSCONFDIR=/app/mysql/config\
-DMYSQL_TCP_PORT=3306\
-DMYSQL_UNIX_ADDR=/app/mysql/mysql.sock\
-DWITH_BOOST=/home/mcbadm/mysql8/\
-DFORCE_INSOURCE_BUILD=1
-DDEFAULT_CHARSET:设置字符集
-
DDEFAULT_COLLATION:设置排序规则
-DENABLED_LOCAL_INFILE=ON:启⽤本地数据导⼊⽀持
-DWITH_SSL=system:启⽤ssl库⽀持
-DMYSQL_DATADIR:数据⽂件⽬录,可任意
-DSYSCONFDIR:配置⽂件⽬录,可任意
-DMYSQL_TCP_PORT:mysql监听的TCP端⼝
-DMYSQL_UNIX_ADDR:mysql.sock路径,可任意
-DWITH_BOOST:boost源码包所在⽬录
-DFORCE_INSOURCE_BUILD:强制建⽴未存在的资源⽬录
cmake若报错,请到原因解决后删除再次cmake
sudo rm -rf /usr/lib64/libstdc++.so.6* (删掉所有低版本c++的库⽂件)
sudo ln -s /usr/local/gcc-9.2/lib64 /usr/lib64 (把新安装的⾼本版c++库⽂件加⼊到系统库⽂件中)
sudo make (需要⼤概1⼩时)
sudo make install
6.编写配置⽂件,建⽴⽬录并授权
sudo mkdir /app/mysql/config
sudo cd /app/mysql
sudo vi config/myf
加⼊以下内容:
[mysqld]
user=mysql
port=3306
datadir=/app/mysql/data
socket=/app/mysql/mysql.sock
[mysqld_safe]
log-error=/app/mysql/logs/mysql-err.log
pid-file=/app/mysql/mysql.pid
[client]
socket=/app/mysql/mysql.sock
sudo useradd mysql -s /sbin/nologin
sudo mkdir -p /app/mysql/logs
sudo touch /app/mysql/logs/mysql-err.log
sudo chown -sql /app/mysql
7.初始化并登陆修改密码
初始化
sudo /app/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/app/mysql/data --basedir=/app/mysql  (⽆初始密码的,若想要初始密码,使⽤--initialize)
启动
sudo /app/mysql/support-files/mysql.server start
登陆(若⽆初始密码直接回车即可)
sudo /app/mysql/bin/mysql -p
修改密码
alter user 'root'@'localhost' identified by '密码';
总结
以上所述是⼩编给⼤家介绍的linux centos7安装mysql8的教程,希望对⼤家有所帮助!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。