docer安装mysql及其安装其他开发环境看这里
方式一
- 配置mysql8安装源
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
- 安装mysql8
一路y即可(时间可能有点长)
sudo yum --enablerepo=mysql80-community install mysql-community-server
- 启动mysql服务
sudo service mysqld start
- 查看运行状态
service mysqld status
- 查看mysql初始密码
cat /var/log/mysqld.log | grep 'temporary password'
- 执行mysql -u root -p来操作数据库
- 修改密码(密码不要太简单不然不通过)
alter user root@localhost identified by ''
- 查看权限
- 修改权限
update user set host='%' where user='root';
flush privileges;
方式二
- 解压mysql压缩包
- 移动到/usr/local并重命名
mv mysql-8.0.21-el7-x86_64 /usr/local/mysql
- 在 /usr/local/mysql新建mysqldb文件夹
- 创建用户组以及用户和密码、授权用户
groupadd mysql
useradd -g mysql mysql
chown -R mysql.mysql /usr/local/mysql
- 切换bin目录下,初始化基础信息
cd /usr/local/mysql/bin
./mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/mysqldb/ --initialize
-
记住临时密码
-
编辑my.cnf配置文件
vim /etc/my.cnf
模板如下
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# # 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/mysqldb
socket=/tmp/mysql.sock
# # 允许最大连接数
max_connections=10000
# # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# # 服务端使用的字符集默认为UTF8
character-set-server=utf8
# # 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# # 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# # 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
host=localhost
user=root
password=root
- 添加mysql到服务(目前我们还在/usr/local/mysql下)
cp -a ./support-files/mysql.server /etc/init.d/mysql
- 授权以及添加服务
chmod +x /etc/init.d/mysql
chkconfig --add mysql
- 启动mysql
service mysql start
- 将mysql命令添加到服务
ln -s /usr/local/mysql/bin/mysql /usr/bin
- 登录mysql 密码是之前生成的密码
- 修改密码、使密码生效
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;
- 修改远程连接并生效
use mysql
update user set host='%' where user='root';
flsh privileges;
- 设置自启
systemctl enable mysql