1.借助资料
https://www.cnblogs.com/yunian139/p/11804965.html
https://www.cnblogs.com/ningy1009/p/12806748.html
1. mysql安装
下载tar包:
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
应该会自动下载到 /usr/local/src 下,将文件移动到 /usr/local/mysql下解压
mv /usr/local/src/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz /usr/local/mysql/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
进入mysql目录:cd /usr/local/mysql;
解压;tar -zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz 得到mysql-8.0.11-linux-glibc2.12-x86_64
重命名; mv mysql-8.0.11-linux-glibc2.12-x86_64 mysql8.0;
创建文件夹data,存储文件;
cd /usr/local/mysql/mysql-8.0/
mkdir ./data
2.2 创建用户及用户组
用户组
groupadd mysql
用户 (用户名/密码)
useradd -g mysql mysql
2.3 授权
chown -R mysql.mysql /usr/local/mysql/mysql8.0/ # 亲测
或
chown -R mysql .
chgrp -R mysql .
2.4 初始化数据库:
yum install -y libaio
查看当前所在目录
pwd # 若显示/usr/local/mysql/mysql8.0,请继续执行,否则请先进入此目录/usr/local/mysql/mysql8.0
初始化 注意查看是否存在相关目录,若不存在,请新建
./bin/mysqld --user=mysql --basedir=/usr/local/mysql/mysql8.0/ --datadir=/usr/local/mysql/mysql8.0/data/ --initialize ; # 亲测
或
./bin/mysql --user=mysql --basedir=/usr/local/mysql/mysql8.0/ --datadir=/usr/local/mysql/mysql8.0
得到临时密码
2.5 Mysql配置(按照自己的文件路径配置,关于其他配置,可自行搜索,若有【mysql-safe】的配置,可以先注释掉)
vi /etc/my.cnf
2.6 建立MySQL服务(注意当前路径应该在mysql8.0,即support-files的根目录)
添加Mysql到系统服务
cp -a ./support-files/mysql.server /etc/init.d/mysql # 若mysqld,以下mysql相应的修改mysqld,如下图所示
chmod +x /etc/init.d/mysql
chkconfig --add mysql
检查服务是否生效
chkconfig --list mysql
3 、启动Mysql服务
启动
service mysql start;
查看启动状态
service mysql status;
ln -s /usr/local/mysql/mysql8.0/bin/mysql /usr/bin
登陆Mysql:(登录后只能先修改密码)
登陆
mysql -hlocalhost -uroot -p
输入"初始化数据库"操作时的"临时密码"
修改密码:
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘新密码’;
设置可以外部访问
登进MySQL,使用如下命令
mysql -uroot -p
输入密码
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 8.0.20 MySQL Community Server - GPL
Copyright © 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql>
2,输入以下语句,进入mysql库:
use mysql;
3,更新域属性,’%'表示允许外部访问:
mysql> update user set host=’%’ where user =‘root’;
Query OK, 1 row affected (0.03 sec)
Rows matched: 1 Changed: 1 Warnings: 0
4,执行以上语句之后再执行:
FLUSH PRIVILEGES; #刷新权限
5,再执行授权语句:
GRANT ALL PRIVILEGES ON . TO ‘root’@’%'WITH GRANT OPTION;
Query OK, 0 rows affected (0.02 sec)