环境
Centos 7.4
MYSQL 5.7.21 (64 位)
开始安装
首先先检查系统中是否集成了 mariadb
Centos 默认是集成了 mariadb 而非 MYSQL
通过命令检查是否存在 mariadb
rpm -qa | grep mariadb
然后进行卸载
rpm -e mariadb-libs-5.5.44-1.el7_1.x86_64
如果会提示有依赖于这的安装包,那么就强制卸载,不查检依赖
rpm -e --nodeps mariadb-libs-5.5.44-1.el7_1.x86_64
官网下载对应版本的编译包
cd /usr/local
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
解压编译包
tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
重命名文件夹
mv mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz mysql
添加用户组和用户
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
备注: -s /bin/false 参数指定 mysql 用户仅拥有所有权,而没有登录权限
修改目录拥有者为 MYSQL
cd /usr/local/mysql
chown -R mysql:mysql ./
安装 MYSQL
./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
可能会出现以下错误
./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
那么只需要安装一下 libaio 依赖就好了
yum install libaio
安装信息将显示随机生成的登录密码 tr#w/aeo6mI
2018-02-28T05:37:52.418066Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-02-28T05:37:54.995328Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-02-28T05:37:55.233794Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-02-28T05:37:55.840973Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 87078d94-1c49-11e8-8a9e-00163e01e0c3.
2018-02-28T05:37:55.844374Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2018-02-28T05:37:55.845159Z 1 [Note] A temporary password is generated for root@localhost: )tr#w/aeo6mI
到这 MYSQL 就算是安装完成了。接下来配置一下 MYSQL 启动相关的内容。
从 5.7.18 版本开始不在二进制包中提供 my-default.cnf 文件
也就是说安装完成后是没有 my.cnf 或 my-default.cnf 文件的,需要自行去网上找放在 /etc/my.cnf 路径
MYSQL 运行配置
启动 MYSQL
./support-files/mysql.server start
将 MYSQL 放入系统进程中
cp support-files/mysql.server /etc/init.d/mysqld
启动 MYSQL 服务
service mysqld restart
登陆 MYSQL
mysql -u root -p
输入随机密码进行登陆
可能会提示 mysql 命令不存在,MySQL 存放路径为 /usr/local/mysql/bin
将 /usr/local/mysql/bin 添加到 PATH 环境变量中
vi ~/.bash_profile
在 export PATH 之前加入 PATH=PATH:HOME/bin:/usr/local/mysql/bin
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
export PATH
保存后使用 source 命令进行重新生效
source ~/.bash_profile
修改 ROOT 用户登陆密码
alter user 'root'@'localhost' identified by 'mysqlpassword';
设置允许远程连接数据库
update user set user.Host='%' where user.User='root';
flush privileges;
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于