工具:
mysql-boost-5.7.26.tar \\如果没有安装boost库一定要选这个版本,不然cmake的时候会报没有boost库错误
相关库gcc gcc-c++ ncurses-devel perl make cmake\\gcc gcc-c++是编译时候需要的工具,ncurses-devel perl是安装mysql需要的依赖库
安装数据库前准备
1.创建mysql用户和相关目录
[root@oracle mysql-5.7.26]# mkdir /usr/local/mysql/ \\安装目录
[root@oracle mysql-5.7.26]# mkdir /data/mysql \\data目录
[root@oracle mysql-5.7.26]# groupadd mysql
[root@oracle mysql-5.7.26]# useradd -g mysql mysql
[root@oracle mysql-5.7.26]#chown -R mysql:mysql /usr/local/mysql/
[root@oracle mysql-5.7.26]#chown -R mysql:mysql /data/mysql
编译mysql源码:
2.上传mysql源码包并解压出来,源码从官方下载
[root@oracle opt]# tar -xf mysql-boost-5.7.26.tar.gz
3.使用cmake进行预编译,查看是否有缺少依赖库的情况,预编译要在解压出的文件夹进行
[root@oracle mysql-5.7.26]cd /opt/ mysql-5.7.26
[root@oracle mysql-5.7.26] cmake. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/msyql -DSYSCONFDIR=/etc -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/opt/mysql-5.7.26/boost \\-DWITH_BOOST选项指到你解压出的boost的位置
4.预编译没有出现Erro的话可进行编译
[root@oracle mysql-5.7.26]# make -j 2 \\j 2是可以根据你的CPU空闲数量来进行同步编译,提高编译的时间,我这里有2个cpu就是j 2
5.编译完到100%表示编译完成,可以make install进行安装了
[root@oracle mysql-5.7.26]# make install
最后看到successful表示安装成功
启动并初始化数据库
1.编辑my.cnf
mysql5.7没有my.cnf的配置模板,要自己创建,my.cnf是mysql在初始化库的时候查找此文件,根据文件中的配置信息进行初始化,一般数据库失败时就是my.cnf没有配置对,下面是我配置的my.cnf,有很多相关的配置选项,有具体某一块的需求可以进行配置。
[root@oracle mysql-5.7.26]# vi /etc/my.cnf
[mysql] \\mysql用户配置
port = 3306
default-character-set=utf8mb4
socket=/tmp/mysql.sock
[client] \\clientde 配置
port = 3306
default-character-set=utf8mb4
socket=/tmp/mysql.sock
[mysqld] \\mysqld守护进程的配置
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
pid-file = /tmp/mysqld.pid
tmpdir=/tmp
socket=/tmp/mysql.sock
character-set-server=utf8
#skip-grant-tables
2.把可执行文件设置加入PATH变量
在mysql安装目录下的bin是执行mysql的一些命令,添加到PATH变量下可以实现全局执行,不用在当前目录下执行。添加到profile可以永久生效
[root@oracle etc]# vi /etc/profile
添加一条export PATH=$PATH:/usr/local/mysql/bin
3.初始化数据库
[root@oracle etc]#mysqld --initialize --user=root --basedir=/usr/local/mysql --datadir=/data/mysql \\basedir和datadir和my.cnf中设置的一样
初始化的结尾要记得PASSW的密码,那是root第一次登陆生成的默认密码
4.开启数据库服务
[root@oracle mysql]# cd /usr/local/mysql/support-files/
[root@oracle support-files]# ./mysql.server start
出现Starting MySQL SUCCESS!服务开启
5.登陆数据库
[root@oracle support-files]# mysql -u root –p
Enter password:
输入前面生成的密码进入数据库
6.第一次登陆不能执行命令,需要初始化数据库的密码
mysql> ALTER USER USER() IDENTIFIED BY '密码';
重新登陆即可
使用Navicat for MySQL连接mysql出现1103错误
可能是你的帐号不允许从远程登陆,只能在localhost登陆。这个时候只要在装数据库的那台电脑,登入MySQL后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项
mysql -u root -p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
到此数据库安装结束