下载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