08-CentOS7服务器搭建-MySQL8

2023-05-03 11:41 阅读

下载mysql的yum源

可以使用腾讯云的源wget https://mirrors.cloud.tencent.com/mysql/yum/mysql80-community-el7/mysql80-community-release-el7-7.noarch.rpm

wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm              //下载mysql的yum源
rpm -Uvh mysql80-community-release-el7-7.noarch.rpm                                    //安装yum源
yum repolist all | grep mysql                                                          //查看所有mysql的yum源
yum repolist enabled | grep mysql                                                      //查看启用的的mysql的yum源
vim /etc/yum.repos.d/mysql-community.repo                                              //可以手动查看或修改mysql源,enabled=1为启用

centos8应该禁用原mysql

yum module disable mysql

安装mysql

yum install mysql-community-server
mkdir /data/mysql                         // 创建mysql数据存放文件夹
chown mysql:mysql /data/mysql             // 将文件夹的所有者设置为mysql

修改数据库文件位置,但不要修改sock位置,否则会出现找不到sock的问题。

vim /etc/my.conf

修改端口号

[client]
# 设置客户端字符集。在服务器使用 mysql -umyname -p 登录时使用的字符集,不设置会导致显示乱码。MySQL8默认就是utf8mb4,无需设置
#default-character-set=utf8mb4

[mysqld]
# 服务器端口号,默认3306
port=53306
# 服务器字符集。MySQL8默认就是utf8mb4,无需设置
#character-set-server=utf8mb4
# innodb内存,对性能影响巨大,一般不应少于1024M。如果是专用数据库服务器,可以设置为物理内存的50%-75%
innodb_buffer_pool_size=2048M
# 数据库最大连接数。根据情况设定,一般不用太大。默认151。
max_connections=500
# 设置在网络传输中一次消息传输量的最大值。MySQL8默认值为64MB,最大值是1GB
#max_allowed_packet=64M
# innodb日志文件大小。最小应为128M,建议设置为1024M(亚马逊云建议为600M,腾讯云建议为1000M),甚至2G-15G,默认为48M。该配置在MySQL8.0.30以后不推荐使用。
#innodb_log_file_size=1024M
# 使用该配置代替innodb_log_file_size。默认为100M。该值未设置时,则取innodb_log_file_size*innodb_log_files_in_group(默认为2)的值。
innodb_redo_log_capacity=2048M
# 数据库文件位置
datadir=/data/mysql

mysql自启动

systemctl start mysqld
systemctl enable mysqld

查看root初始密码,并修改密码

grep 'temporary password' /var/log/mysqld.log
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

常用操作

systemctl restart mysqld                    // 重启mysql
mysqladmin -u foo -p password               // 修改密码

创建用户

mysql -uroot -p                                                   // 登录mysql
create user 'ujcms'@'%' identified by 'mypass';                 // %代表可以在任何地方登录数据库。删除用户:drop user myname
#create user 'ujcms'@'localhost' identified by 'mypass';         // localhost代表只能在本机登录数据库
#update user set password=password('mypass') where user='ujcms';    // 修改密码
create database ujcms;                                          // 创建数据库
grant all on ujcms.* to 'ujcms'@'%';                          // 赋权
flush privileges;                                                 // 刷新系统权限表
show databases;                                                   // 查看数据库
use mysql;                                                        // 切换到mysql数据库
select user,host,plugin from user;                                       // 显示用户名和可以登录的主机
show variables like 'character%';                                 // 显示字符集
show variables like 'collation%';
show variables like '%max_connections%';                          // 显示最大连接数
exit;                                                             // 退出

修改密码

mysqladmin -h 111.222.333.444 -u ujcms -p password
QQ咨询
电话
微信
微信扫码咨询