centos7安装mysql8.0.33-1.el7.x86_64.rpm-bundle教程

       每次安装数据库都到处找帖子,找原来的笔记,把自己的安装过程记录下来,方便自己查看及童鞋们学习。

       

mysql下载

centos7安装mysql8.0.33-1.el7.x86_64.rpm-bundle教程_第1张图片

下载地址:

MySQL :: Download MySQL Community Server (Archived Versions)

1、修改句柄数,文件最后增加

vim /etc/security/limits.conf

* soft nofile 102400
* hard nofile 102400

* soft nproc 65535
* hard nproc 65535

* hard  memlock 2048 
* soft  memlock 2048 

2、修改权限、关闭防火墙

vim /etc/selinux/config

修改中SELINUX=enforcing 已经修改为 SELINUX=permissive

vim替换命令

:%s/SELINUX=enforcing/SELINUX=permissive/g

关闭防火墙:

systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl status firewalld.service

3、centos安装

yum install -y gcc cc gcc-c++

也可以把常用的都安装一下

yum install -y gcc gcc-c++ vim zip unzip net-tools lrzsz wget 

最好重启一下

reboot

4、安装新版mysql之前,我们需要将系统自带的mariadb-lib卸载

查看:rpm -qa | grep -i mariadb
    mariadb-libs-5.5.52-1.el7.x86_64
卸载:rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
再查看,没有了就是卸载成功:rpm -qa | grep -i mariadb

5、创建mysql用户

groupadd mysql
useradd -g mysql -m mysql -s /bin/false

6、上传mysql-8.0.33-1.el7.x86_64.rpm-bundle.tar并解压

解压:
tar -xvf mysql-8.0.33-1.el7.x86_64.rpm-bundle.tar

安装:
rpm -ivh mysql-community-common-8.0.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.33-1.el7.x86_64.rpm 
rpm -ivh mysql-community-client-8.0.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.33-1.el7.x86_64.rpm 
rpm -ivh mysql-community-server-8.0.33-1.el7.x86_64.rpm

7、创建安装目录及权限

mkdir -p /data/mysql/data
chown mysql:mysql /data/mysql/
chown mysql:mysql /data/mysql/data
chmod 777 -R /data/mysql/
chmod -R 777 /var/run/mysqld

8、编辑配置文件

vi /etc/my.cnf  删除原来的内容,直接拷贝以下内容:

[client] 
default-character-set = utf8mb4

[mysql] 
default-character-set = utf8mb4

[mysqld] 
character-set-client-handshake = FALSE 
character-set-server = utf8mb4
collation-server = utf8mb4_bin 
init_connect='SET NAMES utf8mb4'

datadir=/data/mysql/data
socket=/var/lib/mysql/mysql.sock

symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

server-id=1
default-time-zone='+08:00' 
lower_case_table_names=1
transaction_isolation=READ-COMMITTED
skip-name-resolve
expire_logs_days=3

max_connections = 1250
max_user_connections=1000
max_connect_errors=100000

key_buffer_size = 256M
max_allowed_packet = 16M
table_open_cache = 512

log-bin=mysql-bin
binlog_format = ROW
slow-query-log=1
long_query_time =1
slow-query-log-file=/data/mysql/mysqld-slow.log
#log-queries-not-using-indexes

join_buffer_size = 1M
read_buffer_size = 4M
read_rnd_buffer_size = 8M

innodb_buffer_pool_size = 2G
innodb_autoextend_increment = 64M
innodb_log_buffer_size = 8M
innodb_log_file_size = 512M
innodb_log_files_in_group = 3

innodb_flush_log_at_trx_commit = 1
innodb_max_dirty_pages_pct = 70
innodb_flush_method = O_DIRECT

9、-数据库初始化

mysqld --initialize --console --user=mysql

10、启动并修改默认密码

启动:
service mysqld start

查看初始化的随机密码:
grep 'temporary password' /var/log/mysqld.log

登录mysql,输入上面查看到的随机密码:
mysql -u root -p

修改本地密码:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';  
mysql> flush privileges;

11、如果需要其他机器远程访问,创建用户并赋权限:

mysql> create user root@'%' identified by '123456';
mysql> grant all privileges on *.* to root@'%' with grant option;
-- 5.7
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
-- 8.0
mysql> alter user 'root'@'%' identified with mysql_native_password by '123456';
mysql> flush privileges;

你可能感兴趣的:(mysql,linux,服务器,mysql,数据库)