• 生活就是这样,需要去灌溉!
    • 谢谢您的关注,欢迎您的注册与写作!
    • 循环往复,生生不息,或许这就是生命的意义吧!生命是插曲的产品吧!
    • 古今多少事,都付笑言中!
    • 风住尘香花已尽,日晚倦梳头。物是人非事事休,欲语泪先流。
    • 闻说双溪春尚好,也拟泛轻舟,只恐双溪舴艋舟,载不动许多愁。

linux安装mysql5.7.24

Linux 柳叶扉鸿 5年前 (2019-05-10) 664次浏览 已收录 扫描二维码
内容纲要
文章目录[隐藏]
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30000313/article/details/85333971

 

linux 安装 mysql5.7.24


一、卸载

mysql 安装有三种方式,包括二进制包安装(Using Generic Binaries)、RPM 包安装、源码安装。一般是前两种比较多

卸载方法参考Linux->卸载 Mysql 方法总结,记得卸载干净


二、安装

建议路径设置按照写的来

将下载的压缩包复制到 linux 服务器/usr/local/路径下(下载地址https://dev.mysql.com/downloads/mysql/,进去下载默认是最新的,找到Looking for previous GA versions?,点击就可以找到以前的版本,Linux-Generic 是通用版的意思)

linux安装mysql5.7.24

至于将压缩包放到 linux 上去,我是用 WinSCP 软件

——————————————————————————————————————————————

开始安装

——————————————————————————————————————————————

1、进入压缩包存放目录

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

2、解压压缩包

[root@localhost local]# tar -xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

3、修改文件夹名字

将解压后的文件夹修改名字,文件夹名字改为 mysql

[root@localhost local]mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql

4、检查并创建用户和用户组

[root@localhost local]# cat /etc/group | grep mysql
[root@localhost local]# cat /etc/passwd |grep mysql
[root@localhost local]# groupadd mysql
[root@localhost local]# useradd -r -g mysql mysql

5、创建 data 文件夹

某个版本之后就没有 data 文件夹了

[root@localhost local]mkdir /usr/local/mysql/data

6、授权目录和用户

(****重要****)忘记授权会出问题,em…,各种各样的问题

[root@localhost /]# cd /usr/local/
[root@localhost local]# chown -R mysql:mysql mysql/
[root@localhost local]# chmod -R 755 mysql/

7、安装并初始化*****重要*****

执行下面之前去/etc/目录下查看是否有 my.cnf 配置文件,如果有,删除或者修改名字备份起来!不然会出现各种 PID 或者 SOCK 有关的问题

某个版本之后这个步骤是下面这样,以前是 mysql_install_db,datadir 就是安装路径,basedir 就是根目录

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

执行完上面之后,最后一行会有默认生成的密码,记下来

linux安装mysql5.7.24

8、复制启动脚本到资源目录

[root@localhost local]# cd mysql
[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
提示是否覆盖的话,可能之前装过没删除,输入 y 覆盖

9、增加 mysqld 服务控制脚本执行权限

[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

10、将 mysqld 服务加入到系统服务

[root@localhost mysql]# chkconfig –add mysqld

11、检查 mysqld 服务是否已经生效

[root@localhost mysql]# chkconfig –list mysqld

执行完类似下面

linux安装mysql5.7.24

12、启动 mysql

[root@localhost mysql]# service mysqld start

显示 SUCCESS 的话,到这里就已经启动成功了

12-2、启动 mysql 失败

提示找不到 mysql 命令的话

[root@localhost mysql]# ln -s /usr/local/mysql/bin/mysql /usr/bin

13、登录 mysql

失败的话看下面

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

linux安装mysql5.7.24

13-2、登录 mysql 失败

失败信息:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

[root@localhost mysql]# ln -s /var/lib/mysqld/mysql.sock /tmp/mysql.sock

然后返回 13 步重新执行

14、(在 mysql 命令行模式下)修改密码

下面最后面的 root 就是密码,修改完之后退出重新登录一次试试,有些在修改密码的时候执行下面的会报错,可以参考https://blog.csdn.net/q258523454/article/details/84555847,或者百度一下,很容易解决
mysql> flush privileges;
mysql> ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘root’;
mysql> flush privileges;
mysql> quit
[root@localhost mysql]# mysql -uroot -p

15、配置 3306 端口

开启防火墙(如果以前已经安装过 mysql 的,这个一般都已经设置好了,我的是新建的虚拟机,所以没有设置)

配置方法:打开/etc/sysconfig/iptables 文件,找到 22 端口(这个是默认配置好的),复制多一行在下面,把 22 改成 3306 就行,记住,不要复制到最后一行,有些竟然没有 iptables 的文件?这是可以生成的,百度一下就行,有些防火墙文件不是这个,可能要先取消或者设置,之前百度过,忘了

当然下面这个步骤也可以用 vim 命令进行编辑

linux安装mysql5.7.24

修改完保存之后执行命令行重启防火墙

service iptables restart

有些 Linux 版本的重启如下
systemctl restart iptables.service

16、测试连接

本地使用 Navicat 连接测试,填写完点击连接测试

linux安装mysql5.7.24

显示错误信息不允许连接 1130 – Host ‘192.168.114.1’ is not allowed to connect to this MySQL server

linux安装mysql5.7.24

解决方法:(如果还没登录 mysql,记得登录先)
mysql> flush privileges;
mysql> GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
mysql> flush privileges;

执行完再次连接测试

linux安装mysql5.7.24

还是报错 1045 – Access denied for user ‘root’@’192.168.114.1’ (using password:YES),不过这次结果是密码错误,原因是因为未授权,第一次启动是这样的,解决如下:

mysql> grant all privileges on *.* to ‘root’@’%’ identified by ‘root’;
mysql> flush privileges;

再去连接测试就行了,到这里就已经安装完毕,可以使用了

——————————————————————————————————————————————

好像并没有涉及到 my.cnf 的配置文件?某个版本之后可以不需要配置文件,当然也可以自己加上,下面的就是加配置文件 my.cnf 的步骤

——————————————————————————————————————————————

17、关闭 mysql

复制之前先把 mysql 关闭,emm………..不然会报错

如果还是 mysql 命令行模式的,先 quit 退出,然后执行下面

[root@localhost mysql]# service mysqld stop

18、新建配置文件

复制 my.cnf 配置文件到/etc/目录下,没有这个文件的,自己新建,内容如下

# For advice on how to change settings please see # http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html  [mysqld] # #skip-grant-tables # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. innodb_buffer_pool_size = 4G # # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. # join_buffer_size = 128M # sort_buffer_size = 2M # read_rnd_buffer_size = 2M datadir=/usr/local/mysql/data socket=/var/lib/mysqld/mysql.sock character-set-server=utf8mb4 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION  log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid server-id=1 log-bin=mysql-bin log-slave-updates=1 default-storage-engine=INNODB innodb_large_prefix=on max_connections = 2000 max_connect_errors=2000  #skip-grant-tables

19、授权配置文件

注意权限不要设置成 777,777 是最大的权限,权限过大 mysql 会认为不安全,会自动忽略这个文件,相当于没有起作用

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

20、新建路径

在步骤 18 里面配置了日志文件、pid 文件、sock 文件的路径,所以要去自己手动创建这些路径,文件不用创建,会自动生成

PID 路径:/var/run/mysqld/

LOG 路径:/var/log/

SOCK 路径:/var/lib/mysqld/

21、授权 *****重要*****   *****重要*****   *****重要*****

对这些路径授权,忘记的话,em…..各种各样的问题(如果遇到 sock,pid,log 的报错,基本就是这步授权的问题…..)

[root@localhost var]# chown -R mysql /var/lib/mysqld
[root@localhost var]# chgrp -R mysql /var/lib/mysqld
[root@localhost var]# chown -R mysql /var/run/mysqld
[root@localhost var]# chgrp -R mysql /var/run/mysqld
[root@localhost var]# chown -R mysql /var/log
[root@localhost var]# chgrp -R mysql /var/log

22、启动 mysql

[root@localhost var]# service mysqld start

23、查看进程配置生效

[root@localhost var]# ps -ef | grep mysql

linux安装mysql5.7.24

24、应该没了

pid 文件存放的好像是进程的 pid 值

sock 好像是使用 localhost 连接的时候会用到

应该没了

原文始发于:linux 安装 mysql5.7.24


柳叶扉鸿 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明linux安装mysql5.7.24
相关文章 相关文章 相关文章
喜欢 (0)