linux安装mysql5.7及相关环境配置

摘要:
安装mysql5.7和相关环境配置。检查是否包含mysql和mariadb,并卸载rpm-qa|grepmysql//rpm-e-nodepsmysql-libs-5.1-52-1.el6_0.1.x86_64[root@localhost~]#rpm-qa|grepmariadbmariadb-libs-5.5.60-1.el7_5.x86_64//卸载[root@localhost~]#rp

安装mysql5.7以及相关环境配置

检查是否自带mysql和mariadb,并卸载

rpm -qa|grep mysql   //rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64

[root@localhost ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64

//卸载
[root@localhost ~]# rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64
[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

linux安装mysql5.7及相关环境配置第1张

选择版本后下载,然后上传到服务器解压

解压:

tar -xzvf mysql....tar.gz

移动并重命名mysql

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

创建用户组

[root@localhost mysql-5.7.32]# groupadd mysql
[root@localhost mysql-5.7.32]# useradd -r -g mysql mysql
[root@localhost mysql-5.7.32]# chown -R mysql:mysql /usr/local/mysql-5.7.32/

添加mysql服务:

cp /usr/local/mysql-5.7.29/support-files/mysql.server /etc/init.d/mysql

修改/etc/init.d/mysql

basedir=/usr/local/mysql-5.7.32
datadir=/usr/local/mysql-5.7.32/data

创建my_default.conf
路径:/usr/local/mysql-5.7.32/support-files

[mysqld]

#设置mysql的安装目录
basedir = /usr/local/mysql-5.7.32
#设置mysql数据库的数据存放目录
datadir = /usr/local/mysql-5.7.32/data
#设置端口
port = 3306

explicit_defaults_for_timestamp=true

socket = /tmp/mysql.sock
#设置字符集
character-set-server=utf8
#日志存放目录
log-error = /usr/local/mysql-5.7.32/data/mysqld.log
pid-file = /usr/local/mysql-5.7.32/data/mysqld.pid
#允许时间类型的数据为零(去掉NO_ZERO_IN_DATE,NO_ZERO_DATE)
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

然后把my_default.conf文件复制并该文件名为/etc/my.cnf

sql_mode:

STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

初始配置

[root@localhost mysql-5.7.32]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.32/ --datadir=/usr/local/mysql-5.7.32/data/

查看日志:

[root@localhost data]# cat mysqld.log 
2020-11-13T05:02:37.425129Z 0 [Warning] InnoDB: New log files created, LSN=45790
2020-11-13T05:02:37.488867Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2020-11-13T05:02:37.556845Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 72f9cbb2-256d-11eb-8976-000c29c5f1de.
2020-11-13T05:02:37.557795Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2020-11-13T05:02:38.304828Z 0 [Warning] CA certificate ca.pem is self signed.
2020-11-13T05:02:38.485332Z 1 [Note] A temporary password is generated for root@localhost: TPFUIjwa+4T-
[root@localhost data]# pwd
/usr/local/mysql-5.7.32/data

把启动脚本放到开机初始化目录

cp support-files/mysql.server /etc/init.d/mysql

启动mysql

[root@localhost init.d]# service mysql start
Starting MySQL. SUCCESS! 

修改mysql5.7 root密码:

已知密码:

[root@localhost mysql-5.7.32]# ./bin/mysql -uroot -p

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

不修改密码的话会报错,必须先修改密码:alter user 'root'@'localhost' identified by 'poiuzxcv0987';
mysql> use mysql
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> update user set authentication_string=password('poiuzxcv0987') where user='root';
ERROR 1046 (3D000): No database selected
mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> update mysql.user set authentication_string=password('poiuzxcv0987') where user='root';
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> alter user 'root'@'localhost' identified by 'poiuzxcv0987';

在修改密码过程中,如果密码过于简单也会报错的,我们可以修改:`validate_password_length` (密码长度)参数默认为8,我们修改为1
validate_password_policy:参数0表示长度验证,参数1或者medium·表示大写或小写和特殊字符。,参数2或者STRONG,表示长度,大写或者小写和特殊字符,文件名称
默认是1,即MEDIUM,所以要求,带线密码长度必须符合长度,含数字和小写或者大写

set global validate_password_policy=0;
// 设置密码长度为1
set global validate_password_length=1;

修改密码:

mysql> alter user 'root'@'localhost' identified by 'poiuzxcv0987';

免责声明:文章转载自《linux安装mysql5.7及相关环境配置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇删除或重命名文件夹和文件的方法Flutter cached_network_image图片缓存异常/加载失败优化下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

搭建MySQL MHA高可用

本文内容参考:http://www.ttlsa.com/mysql/step-one-by-one-deploy-mysql-mha-cluster/ MySQL MHA 高可用集群 环境: Linux: centos 6.6 MySQL: 5.5.49 MHA:mha4mysql-manager-0.56-0.el6.noarch.rpm(管理端) 以及...

mysql性能优化-慢查询分析、优化索引和配置【转】

一、优化概述 二、查询与索引优化分析 1性能瓶颈定位 Show命令 慢查询日志 explain分析查询 profiling分析查询 2索引及查询优化 三、配置优化 1)      max_connections 2)      back_log 3)      interactive_timeout 4)      key_buffer_size 5)  ...

Linux下查看Nginx的并发连接数和连接状态-乾颐堂

Linux下查看Nginx等的并发连接数和连接状态。 1、查看Web服务器(Nginx Apache)的并发请求数及其TCP连接状态:  netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 或者: netstat -n | awk '/^tcp/ {++state[$NF...

kvm虚拟化介绍(1)

一、什么是虚拟化 在计算机技术中,虚拟化(技术)或虚拟技术(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源(CPU、内存、磁盘空间、网络适配器等),予以抽象、转换后呈现出来并可供分区、组合为一个或多个电脑配置环境。 虚拟化,也就是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个...

mysql 使用 table_rows 统计表格行数不准确

使用 table_rows 统计表格行数不准确  首先生产环境不建议这样做,只是为了测试 导致统计信息不准确的原因是什么呢?其实是MySQL 8.0为了提高information_schema的查询效率,将视图tables和statistics里面的统计信息缓存起来,缓存过期时间由参数information_schema_stats_expiry决定,...

Linux多网卡负载均衡 : bond

USERCTL=no/yes 普通用户是否可以关闭或启用网关 -------------------------------- 在这介绍的Linux双网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作。其实这项技术在Sun和Cisco中早已...