1. 首页
  2. 技术知识

MySQL8.0.19安装教程

官网下载安装包:mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

安装环境:CentOS Linux release 7.5.1804 (Core)

解压安装包:

xz -d mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

tar -xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar环境变量:

yum install -y gcc gcc-c++ make cmake automake ncurses-devel bison bison-devel tcp_wrAPPers-devel libaio libaio-devel perl-Data-Dumper net-tools创建相关用户和组:

[root@localhost ~]# groupadd mysql

[root@localhost ~]# useradd -g mysql -d /home/mysql -m -p mysql mysql创建相关目录:

[root@localhost ~]# mkdir -p /data/mysql/;chown -R mysql.mysql /data/mysql/

[root@localhost ~]# mkdir -p /data/tmp/;chown -R mysql.mysql /data/tmp/编辑配置文件:

[root@localhost tmp]# vim /etc/my.cnf

[root@localhost mysql]# cat /etc/my.cnf

[client]

port= 3306

socket = /tmp/mysql.sock

## The MySQL server

[mysqld]

port = 3306

socket = /tmp/mysql.sock

user = mysql

skip-external-locking

skip-name-resolve

#skip-grant-tables

#skip-networking

###################################### dir

basedir=/usr/local/mysql

datadir=/data/mysql

tmpdir=/data/tmp

secure_file_priv=/data/tmp

###################################### some app

log-error=mysql.err

pid-file=/data/mysql/mysql.pid

local-infile=1

event_scheduler=0

federated

default-storage-engine=InnoDB

#default-time-zone= ‘+8:00’

log_timestamps=SYSTEM

character-set-client-handshake = FALSE

character-set-server = utf8mb4

collation-server = utf8mb4_unicode_ci

init_connect=’SET NAMES utf8mb4′

#fulltext

innodb_optimize_fulltext_only

ft_min_word_len=1

#ft_max_word_len

innodb_ft_min_token_size=1

###################################### memory allocate and myisam configure

max_connections=3000

max_connect_errors=10000

key_buffer_size = 16M

max_allowed_packet = 16M

table_open_cache = 10240

sort_buffer_size = 2M

read_buffer_size = 2M

read_rnd_buffer_size = 2M

join_buffer_size=2M

myisam_sort_buffer_size = 4M

#net_buffer_length = 2M

thread_cache_size = 24

tmp_table_size=1G

max_heap_table_size=1G

#thread_concurrency =48

###################################### replication

server-id = 101096

log-bin=mysql-bin

binlog_format=mixed

max_binlog_size=1G

log_slave_updates=true

log_bin_trust_functiоn_creators=true

binlog_expire_logs_seconds=259200 #binlog过期时间,单位秒

replicate-ignore-db=mysql

replicate-ignore-db=test

replicate-ignore-db=information_schema

replicate-ignore-db=performance_schema

replicate-wild-ignore-table=mysql.%

replicate-wild-ignore-table=test.%

replicate-wild-ignore-table=information_schema.%

replicate-wild-ignore-table=performance_schema.%

lower_case_table_names = 1

#read_only=1

master_info_repository=TABLE

relay_log_info_repository=TABLE

###################################### slow-query

long_query_time=1

slow_query_log=1

slow_query_log_file=/data/mysql/slow-query.log

interactive_timeout=600

wait_timeout=600

###################################### innodb configure

innodb_file_per_table

innodb_data_home_dir = /data/mysql

innodb_log_group_home_dir = /data/mysql

innodb_buffer_pool_size =4G

innodb_log_file_size = 1G

innodb_log_files_in_group = 3

innodb_log_buffer_size = 32M

innodb_flush_log_at_trx_commit = 1

sync_binlog=0

sql-mode=”STRICT_TRANS_TABLЕS,NO_ENGINE_SUBSTITUTION,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO”

##########################################

[mysqldump]

quick

max_allowed_packet = 16M

[mysql]

no-auto-rehash

default-character-set = utf8mb4

prompt=\\U \\h \\R:\\m:\\s \\d>

[myisamchk]

key_buffer_size = 20M

sort_buffer_size = 20M

read_buffer = 2M

write_buffer = 2M

[mysqlhotcopy]

interactive-timeout根目录:

[root@localhost ~]# mv mysql-8.0.19-linux-glibc2.12-x86_64 /usr/local/mysql

[root@localhost ~]# chown -R mysql.mysql /usr/local/mysql进行初始化,默认密码为空:

[root@localhost ~]# /usr/local/mysql/bin/mysqld –initialize-insecure –basedir=/usr/local/mysql –datadir=/data/mysql/ –user=mysql查看日志有没有报错:

[root@localhost ~]# cat /data/mysql/mysql.err

2022-01-20T15:11:46.156633+08:00 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.19) initializing of server in progress as process 14822

100 200 300 400 500 600 700 800 900 1000

100 200 300 400 500 600 700 800 900 1000

100 200 300 400 500 600 700 800 900 1000

2022-01-20T15:12:31.118120+08:00 5 [Warning] [MY-010453] [Server] root@localhost is created with an empty password ! Please consider switching off the –initialize-insecure option.环境变量与开机自启:

[root@localhost mysql]# vim /etc/profile

#在最后添加

export MYSQL_HOME=/usr/local/mysql

PATH=$PATH:$MYSQL_HOME/bin/

[root@localhost mysql]# source /etc/profile

 [root@localhost mysql]# cd /usr/local/mysql

 [root@localhost mysql]# cp -f support-files/mysql.server /etc/init.d/mysqld

 [root@localhost mysql]# chmod 755 /etc/init.d/mysqld

 [root@localhost mysql]# chkconfig –add mysqld

 [root@localhost mysql]# chkconfig mysqld on启动数据库:

[root@localhost mysql]# /etc/init.d/mysqld start修改密码与创建用户,8.0已取消grant权限自动创建用户,要用create user创建用户再用grant赋予权限:

[root@localhost ~]# mysql -uroot -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 8

Server version: 8.0.19 MySQL Community Server – GPL

Copyright (c) 2000, 2022, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

root@localhost localhost 15:43:29 (none)>ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘password’;

Query OK, 0 rows affected (0.01 sec)

root@localhost localhost 15:49:30 (none)>CREATE USER ceshi@’localhost’ IDENTIFIED BY ‘password’;

Query OK, 0 rows affected (0.01 sec)

root@localhost localhost 15:50:07 (none)>grant SELECT on *.* to ‘ceshi’@’localhost’;

Query OK, 0 rows affected, 1 warning (0.00 sec)

root@localhost localhost 15:51:10 (none)>show grants for ceshi@localhost;

+——————————————–+

| Grants for ceshi@localhost     |

+——————————————–+

| GRANT SELECT ON *.* TO `ceshi`@`localhost` |

+——————————————–+

1 row in set (0.00 sec)
ps:MySql8.0.19 安装采坑记录

1、ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

解决方式如下:

mysql> ALTER USER USER() IDENTIFIED BY ‘Xiaoming250’;2、修改root密码

ALTER user ‘root’@’localhost’ IDENTIFIED BY ‘新密码’;
总结

以上所述是小编给大家介绍的MySQL8.0.19安装教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对共生网络网站的支持!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原创文章,作者:starterknow,如若转载,请注明出处:https://www.starterknow.com/116133.html

联系我们