我的编程空间,编程开发者的网络收藏夹
学习永远不晚

linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决

在安装过程中所遇到的问题有:
1、my-default.cnf文件找不到
2、mysql启动报错
3、mysql临时密码无法登录

安装环境centos 6.0
下载数据库:
[root@CLanguage class="lazy" data-src]# pwd
/usr/local/class="lazy" data-src #下载文件存放路径(个人原因,可随意。)
[root@CLanguage class="lazy" data-src]#
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
[root@CLanguage class="lazy" data-src]# tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz #解压
[root@CLanguage class="lazy" data-src]# mv mysql-5.7.21-linux-glibc2.12-x86_64 mysql
#更改文件名
卸载旧版本:
[root@CLanguage class="lazy" data-src]# rpm -qa |grep mysql
mysql-5.1.47-4.el6.x86_64
mysql-libs-5.1.47-4.el6.x86_64
mysql-devel-5.1.47-4.el6.x86_64
[root@CLanguage class="lazy" data-src]# rpm -e --nodeps mysql-5.1.47-4.el6.x86_64
[root@CLanguage class="lazy" data-src]# rpm -e --nodeps mysql-libs-5.1.47-4.el6.x86_64
[root@CLanguage class="lazy" data-src]# rpm -e --nodeps mysql-devel-5.1.47-4.el6.x86_64
[root@CLanguage class="lazy" data-src]# rpm -qa |grep mysql
[root@CLanguage class="lazy" data-src]#
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
创建数据库目录以及用户和组:
[root@CLanguage class="lazy" data-src]#mkdir /data
[root@CLanguage class="lazy" data-src]#mkdir /data/mysqldata #数据存放目录
[root@CLanguage class="lazy" data-src]#groupadd mysql #创建mysql组
[root@CLanguage class="lazy" data-src]#useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/class="lazy" data-src/mysql #添加mysql用户使其shell模式为nologin(禁止登录),
[root@CLanguage mysql]# chown -R mysql .
[root@CLanguage mysql]# chgrp -R mysql .
[root@CLanguage mysql]#chown -R mysql /data/mysqldata
安装前先安装numactl组件,或者会报错:bin/mysqld: error while loading shared libraries: libnuma.so.1
[root@CLanguage mysql]# yum -y install numactl
(可以使用本地CD yum源进行安装,前提是搭建好后。)
配置参数:
[root@CLanguage class="lazy" data-src]# cd mysql
[root@CLanguage mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/class="lazy" data-src/mysql --datadir=/data/mysqldata/ #配置参数
2018-01-31T08:41:32.144065Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-01-31T08:41:34.501273Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-01-31T08:41:34.943351Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-01-31T08:41:35.016168Z 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: 8b673fc1-0662-11e8-a70a-000c298536ba.
2018-01-31T08:41:35.021358Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2018-01-31T08:41:35.025019Z 1 [Note] A temporary password is generated for root@localhost: dhaMrqAVZ5-C {最后的root@localhost:后面为临时密码}

--basedir=/usr/local/class="lazy" data-src/mysql #mysql文件所在目录
--datadir=/data/mysqldata/ #数据库存放目录
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
[root@CLanguage mysql]# bin/mysql_ssl_rsa_setup --datadir=/data/mysqldata/
#配置参数
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
修改系统配置文件:
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
在support-files目录未发现my-default.cnf文件,所以只能手动创建了。
[root@CLanguage support-files]# vim /etc/my.cnf (创建my.cnf,将以下代码复制进去,记得下面几个目录需要自己手动修改为自己定义的目录)

[client]
port = 3306
socket = /tmp/mysql.sock

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/class="lazy" data-src/mysql #文件存放目录
datadir=/data/mysqldata/ #数据库存放目录
socket=/tmp/mysql.sock #以上面socket值要一致
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
lower_case_table_names = 1

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections=5000

default-time_zone = '+8:00'
(这里参数不全,可以去其他地方拷贝一个my.cnf文件)
或者拷贝以下内容:
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES # 一般配置选项
basedir = /usr/local/class="lazy" data-src/mysql #需修改
datadir = /data/mysqldata #需修改
port = 3306
socket = /var/run/mysqld/mysqld.sock
character-set-server=utf8

back_log = 300
max_connections = 3000
max_connect_errors = 50
table_open_cache = 4096
max_allowed_packet = 32M
#binlog_cache_size = 4M

max_heap_table_size = 128M
read_rnd_buffer_size = 16M
sort_buffer_size = 16M
join_buffer_size = 16M
thread_cache_size = 16
query_cache_size = 128M
query_cache_limit = 4M
ft_min_word_len = 8

thread_stack = 512K
transaction_isolation = REPEATABLE-READ
tmp_table_size = 128M
#log-bin=mysql-bin
long_query_time = 6

server_id=1

innodb_buffer_pool_size = 1G
innodb_thread_concurrency = 16
innodb_log_buffer_size = 16M

innodb_log_file_size = 512M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
innodb_file_per_table = on

[mysqldump]
quick

max_allowed_packet = 32M

[mysql]
no-auto-rehash
default-character-set=utf8
safe-updates

[myisamchk]
key_buffer = 16M
sort_buffer_size = 16M
read_buffer = 8M
write_buffer = 8M

[mysqlhotcopy]
interactive-timeout

[mysqld_safe]
open-files-limit = 8192
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
[root@CLanguage support-files]# cp mysql.server /etc/init.d/mysqld
[root@CLanguage support-files]# vim /etc/init.d/mysqld
修改/etc/init.d/mysqld在basedir和datadir后填入文件存放路径和数据存放路径
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
启动mysql:
[root@CLanguage mysql]# bin/mysqld_safe --user=mysql & #检测
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
[root@CLanguage run]# /etc/init.d/mysql start (这里会报错,因为找不到mysqld文件夹,所以要创建并赋予权限。)
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
[root@CLanguage mysql]# cd /var/run/
[root@CLanguage run]# mkdir mysqld
[root@CLanguage run]# chown -R mysql mysqld
[root@CLanguage run]# chgrp -R mysql mysqld
[root@CLanguage run]# /etc/init.d/mysqld start
Starting MySQL... [ OK ]
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
登录mysql已经修改密码:
如果使用bin/mysql -uroot -p无法登录时,可以使用以下办法进行密码重设:
修改/etc/my.cnf文件
在[mysqld]下面添加“skip-grant-tables”
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
(skip-grant-tables命令为跳过验证,直接登录。个人认为好比linux的单用户模式,来进行mysql的密码修改。)
重启mysql
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
在命令行中输入bin/mysql进行登录(直接输入mysql命令可能提示找不到命令。因为path路径未设定,后面添加path路径说明。)
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)

mysql> USE mysql; #选择数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update user set authentication_string=password('123abc') where user='root';
Query OK, 0 rows affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 1

mysql> flush privileges; #刷新权限
Query OK, 0 rows affected (0.00 sec)

mysql> quit;
Bye
重新登录mysql
[root@CLanguage run]#mysql -uroot -p123abc
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
修改完成后,注销my.cnf中的“skip-grant-tables”
修改环境变量:
将mysql的bin路径添加到/etc/profile
[root@CLanguage mysql]# vim /etc/profile
添加:
export PATH=/usr/local/class="lazy" data-src/mysql/bin:$PATH
[root@CLanguage mysql]# source /etc/profile
配置mysql自动启动
[root@CLanguage mysql]#chmod 755 /etc/init.d/mysqld
[root@CLanguage mysql]#chkconfig --add mysqld
[root@CLanguage mysql]#chkconfig --level 345 mysqld on

在使用过程中,发现重启电脑,mysql无法启动。报PID文件找不到,存放PID文件的路径为:/var/run/mysqld下面,每次重启完在/var/run/目录中都找不到mysqld文件夹,都需要重新创建一次mysqld文件夹和修改文件夹的所属用户和组,才能正常使用。

解决方法
因为之所以/var/run/mysqld 目录每次重启后都需要手动去创建,是因为/var/run/目录下建立文件夹是在内存中,故每次重启后内存被清空导致/var/run/mysqld 也被清除,从而导致无法启动mysql。
创建一个mysqld.pid文件存放目录,重新修改文件夹所属用户和组。修改my.cnf文件,找到pid-file=/var/run/mysqld/mysqld.pid将mysqld.pid存放路径修改到其他存放位置。具体操作如下:
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
重新启动mysql正常运行。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL安装配置以及安装失败解决过程

目录一、 下载mysql二、 安装MySQL三、 配置环境变量1. 找到MySQL的安装路径2. 右击此电脑选择“属性”3. 先点击“高级系统设置”,再点击“环境变量”
2023-04-25

安装vCenter6.0遇到的问题以及解决方法

实验环境: 在Window Server 2008 R2上安装vCenter6.0,数据库采用的SQL Server2012 问题一: 安装到50%的时候提示:无法启动invsvc服务以及无法运行vdcpromo等各种问题,点击确定后,
2023-06-04

linux 安装 mysql 8.0.19 详细步骤及问题解决方法

最近买了个腾讯云服务器,搭建环境。 该笔记用于系统上未装过mysql的干净系统第一次安装mysql。自己指定安装目录,指定数据文件目录。 linux系统版本: CentOS 7.3 64位 安装源文件版本:mysql-5.7.21-linu
2022-06-03

Centos7.4服务器安装apache及安装过程出现的问题解决方法

本文实例讲述了Centos7.4服务器安装apache及安装过程出现的问题解决方法。分享给大家供大家参考,具体如下: 一、安装httpd 1. 安装之前,先查看系统中是否存在已经安装了的httpd.rpm包,如果,没有就是没安装,有的话rp
2022-06-04

Docker安装mysql教程以及解决mysqld: Can‘t read dir of ‘/etc/mysql/conf.d/‘问题

目录一、下载mysql的docker镜像二、启动MySQL容器2.1 命令2.2 报错mysqld: Can’t read dir of ‘/etc/mysql/conf.d/’ (Errcode: 2
Docker安装mysql教程以及解决mysqld: Can‘t read dir of ‘/etc/mysql/conf.d/‘问题
2024-10-11

如何解决Linux中二进制包安装MySQL的问题

这篇文章将为大家详细讲解有关如何解决Linux中二进制包安装MySQL的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。第一步:安装相关的依赖yum install perl-Data-Dumper第二
2023-06-09

简单利用conda安装tensorflow-gpu=2.2.0的过程及问题解决

这篇文章主要介绍了简单利用conda安装tensorflow-gpu=2.2.0,本文给大家详细分享问题记录及错误问题解决方案,需要的朋友可以参考下
2023-01-04

安装Windows 8.1过程中出现的各种问题怎么解决?安装Windows 8.1教程

这个周末就安装了个系统,本以为一个小时就能搞定,没想到花费了将近一天。 我的机子是6G内存、500G硬盘,原装系统是Windows 7,现在想换成Windows 8.1,于是下载了64位的Windows 8.1 ISO镜像文件,用Daemo
2022-06-04

编程热搜

目录