Linux下安装mysql-5.7.30
Linux下安装mysql-5.7.30
下载MySql安装包
下载地址: 官方下载
环境配置
- 检查系统是否已安装mysql
rpm -qa|grep mysql
如果有进行强行卸载
rpm -e --nodeps mysql-libs-xxxxxxxx
- 检测系统是否自带mariadb
rpm -qa|grep mariadb
如果有删除相关组件
rpm -e --nodeps mariadb-libs-5xxxxx
用连接工具将下载的mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz上传到linux服务器
安装
- 解压mysql
tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
- 解压完成后重命名
mv mysql-5.7.30-linux-glibc2.12-x86_64 mysql-5.7.30
mv mysql-5.7.30 /usr/local/
- 检查mysql组和用户是否存在,如果没有则创建
cat /etc/group|grep mysql
#添加组和用户
groupadd mysql
useradd -r -g mysql mysql #useradd -r参数表示mysql用户是系统用户,不可用于登录系统
- 创建data目录
cd /usr/local/mysql-5.7.30
mkdir data
- 修改/usr/local/mysql-5.7.30的所有者及所属组改为mysql
chown -R mysql.mysql /usr/local/mysql-5.7.30
- 在/usr/local/mysql-5.7.30/support-files目录下创建my_default.cnf
cd support-files/
vim my_default.cnf
cp my_default.cnf /etc/my.cnf
[mysqld]
#设置mysql的安装目录
basedir =/usr/local/mysql-5.7.30
#设置mysql数据库的数据存放目录
datadir = /usr/local/mysql-5.7.30/data
#设置端口
port = 3306
socket = /tmp/mysql.sock
#设置字符集
character-set-server=utf8
#日志存放目录
log-error = /usr/local/mysql-5.7.30/data/mysqld.log
pid-file = /usr/local/mysql-5.7.30/data/mysqld.pid
- 初始化Mysql
cd ../
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.30/ --datadir=/usr/local/mysql-5.7.30/data/
如果报错:./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or 就安装libaio,如果没有则跳过
yum install libaio
- 初始化完成之后查看日志
cat /usr/local/mysql-5.7.30/data/mysqld.log #最后一行 root@localhost:临时密码
- 把启动脚本放到开机初始化目录
cp support-files/mysql.server /etc/init.d/mysql
- 启动mysql
service mysql start #或者 systemctl start mysql (linux 7)
- 修改 mysql 密码
cd /usr/local/mysql-5.7.30
./bin/mysql -u root -p
&UkH#dsqm7fD #第8步查看的密码
mysql> set password=password('123456');
mysql> grant all privileges on *.* to root@'%' identified by '123456';
mysql> flush privileges;
12 添加远程访问权限
mysql> use mysql;
mysql> update user set host='%' where user = 'root';
mysql> flush privileges;
如果更改时报错:ERROR 1062 (23000): Duplicate entry ‘%-root’ for key ‘PRIMARY’,就先查询一下是否已更改,最后执行刷新。
13. 重启mysql生效
mysql>exit;
service mysql restart
14.设置开启自启
chmod +x /etc/init.d/mysql
chkconfig --add mysql
chkconfig --list
看到3、4、5状态为开或者为 on 则表示成功。