1.下载rpm(/usr/local/)
wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
或者从
2、在线下载mysql
yum -y localinstall mysql80-community-release-el8-1.noarch.rpm 或者
rpm -ivh mysql80-community-release-el8-1.noarch.rpm
3、安装mysql
yum install -y mysql-server 或者yum install mysql-server
4、初始化mysql---忘了了不知道有没有这个步骤
mysqld --initialize //创建数据文件目录和mysql系统数据库 产生随机root密码
重点说明:mysql存储最好放在数据盘,mysql数据可以大到20G以上,如果是系统盘是40G的,那么有可能那天因为磁盘满而无法正常工作。
mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/mnt/mysql/data ----类似这样的。
重点说明:window 下表名不区分大小写,linux中区分表名大小写,如果业务中设计到表名不区分大小写,设置如下:
mysqld --initialize --lower-case-table-names=1 --目前这种方式不行,报错。不能用
5、启动/关闭mysql
service mysqld start
service mysqld stop
service mysqld restart
6、给var/lib/mysql目录权限授权
chown -R mysql:mysql /var/lib/mysql/
7、无密码登录设置----这里有一个很大的误区
不同版本设置不太一样
/etc/my.cnf 添加skip-grant-tables
最大的误区就是这里,加在这里无效,还是得提示输入密码
正确的做法是,找到 /etc/my.cnf.d 目录下的mysql-server.cnf ,如下图所示,这样加入可以跳过免登陆
修改成功后必须重启mysql 数据库,不然不起作用 service mysqld restart
8、设置密码并设置root用户可以外部服务器访问
mysql -u root -p ----然后回车进行操作
use mysql;
flush privileges; //设置密码前需要刷新下,否则会报错
alter user 'root'@'localhost' identified by '123456'; 修改密码 ---如果以前有过密码命令如下:ALTER USER 'root'@'%' identified by '123456';
update user set host='%' where user='root'; 更新可以远程访问
flush privileges;//刷新权限表
记得最后一步就可以 /etc/my.cnf.d 目录下的mysql-server.cnf 中删除skip-grant-tables ,否则无法远程连接。
9.设置mysql开机启动
systemctl enable mysqld
重点介绍:
1、设置最大数据库连接数,默认151个,mysql工具中每一个查询界面都是一个连接数
show variables like 'max_connections'; --该命令可以查询最大连接数
mysql8.0版本设置最大连接数:
vi /etc/my.cnf.d/mysql-server.cnf
新增一行:max_connections = 1000
如图所示:
2、设置group_concat函数拼接长度,默认1024,如果太长sql自动截取1024长度
vi /etc/my.cnf.d/mysql-server.cnf
新增一行:group_concat_max_len = 102400
如图所示:
重点提示:将mysql日志数据不要放到系统盘中,买一个500G的数据盘,将数据放到数据盘中,如果放到系统盘后续bin.log日志会不断变大,导致系统盘40G占满(阿里默认系统盘40G,可以升级到120G,短暂解决该问题),导致系统任何服务不可用
datadir=/var/lib/mysql ---主要修改该地址
如图所示:系统盘40G,mysql就用了31G
linux centos8 安装mysql 8.0.17
猜你喜欢
转载自blog.csdn.net/qq_39291929/article/details/104754166
今日推荐
周排行