«

Centos安装mysql 8.0

晨曦 发布于 阅读:68 Mysql


注意:本次安装目录为/opt/module/

下载mysql安装包

[root@chenxi module]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz

解压安装包

[root@chenxi module]# tar -xf mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz
[root@chenxi module]# mv mysql-8.0.18-linux-glibc2.12-x86_64 mysql

在/etc目录下创建my.cnf初始文件插入以下并保存

[root@chenxi module]# vim /etc/my.cnf

[mysqld]

设置3306端口

port=3306

设置mysql的安装目录

basedir=/opt/module/mysql

设置mysql数据库的数据的存放目录

datadir=/opt/module/mysql/data

允许最大连接数

max_connections=10000

允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统

max_connect_errors=10

服务端使用的字符集默认为UTF8MB4

搭建时使用UTF8报出警告如下:

--character-set-server: 'utf8' is currently an alias for the character

set UTF8MB3, but will be an alias for UTF8MB4 in a future release.

Please consider using UTF8MB4 in order to be unambiguous

character-set-server=UTF8MB4

创建新表时将使用的默认存储引擎

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

初始化mysql

[root@chenxi module]# /opt/module/mysql/bin/mysqld --initialize --user=mysqluser --basedir=/opt/module/mysql/ --datadir=/opt/module/mysql/data/

暂且保留好密码:root@localhost: dj91/8JC%k=Z

创建用户组和用户并赋予mysql文件夹操作权限

[root@chenxi module]# groupadd mysqlgroup
[root@chenxi module]# useradd mysqluser
[root@chenxi module]# chown -R mysqluser:mysqlgroup /opt/module/mysql

把启动命令加入到系统服务service管理并授权

[root@chenxi module]# cp support-files/mysql.server /etc/init.d/mysqld
[root@chenxi module]# chmod 755 /etc/init.d/mysqld

切换用户启动

[root@chenxi module]# su mysqluser

注意:切换用户,如不切换用户启动会报如下错误:(大坑)

[mysqluser@chenxi module]# service mysqld start

进入mysql(/opt/module/mysql/bin/mysql为mysql安装目录下的bin/mysql)

[mysqluser@chenxi module]# /opt/module/mysql/bin/mysql -uroot -p dj91/8JC%k=Z

修改当前用户密码、创建新用户并授权、刷新缓存

mysql> alter user user() identified by '密码';
mysql> create user '用户名'@'%' identified by '密码';
mysql> grant all privileges on . to '用户名'@'%' with grant option;
mysql> flush privileges;

Linux安装