LINUX MYSQL5.7.27安装

LINUX MYSQL5.7.27安装


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

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

二、安装
建议路径设置按照写的来

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

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

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
执行完上面之后,检查是否有Error,有的话及时解决。

[root@localhost local]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
2019-07-18T07:38:20.300936Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2019-07-18T07:38:21.037889Z 0 [Warning] InnoDB: New log files created, LSN=45790
2019-07-18T07:38:21.124063Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2019-07-18T07:38:21.194242Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been start ed. Generating a new UUID: 0448b7a0-a92f-11e9-ac91-fa163e17d701.
2019-07-18T07:38:21.195622Z 0 [Warning] Gtid table is not ready to be used. Table ‘mysql.gtid_executed’ cannot be opened.
2019-07-18T07:38:21.196412Z 1 [Note] A temporary password is generated for root@localhost: n2ta1yWih9-/
最后一行会有默认生成的密码,记下来
A temporary password is generated for root@localhost: n2ta1yWih9-/

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
mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
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]# service mysqld start
Starting MySQL.2019-07-18T07:41:24.268830Z mysqld_safe Directory ‘/var/lib/mysql’ for UNIX socket file don’t exists.
The server quit without updating PID file (/var/lib/mysql/z[失败]pid).
[root@localhost mysql]# mkdir /var/lib/mysql
[root@localhost mysql]# service mysqld start
Starting MySQL.The server quit without updating PID file (/[失败]b/mysql/localhost.pid).
[root@localhost mysql]# mysql -uroot -p
Enter password:
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
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/mysql/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命令进行编辑

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

[root@localhost mysql] service iptables restart
有些Linux版本的重启如下

[root@localhost mysql] systemctl restart iptables.service
16、测试连接
本地使用Navicat连接测试,填写完点击连接测试

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

解决方法:(如果还没登录mysql,记得登录先)

mysql> flush privileges;
mysql> GRANT ALL PRIVILEGES ON . TO ‘myuser’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
mysql> flush privileges;
执行完再次连接测试

还是报错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;
再去连接测试就行了,到这里就已经安装完毕,可以使用了

链接:https://www.jianshu.com/p/6430458aad78

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值