Linux安装msyql5.7.24及爬坑

步骤一:坑一:安装前请检查你的linux系统是32位还是64位

(我这里就是32位系统的服务器毛起安装64位的mysql、执行到msyqld初始化的时候报-bash: ./mysqld: cannot execute binary file

查看系统是32还是64位的命令:

getconf LONG_BIT

步骤二、下载mysql的gz包

到mysql官网下载mysql编译好的二进制安装包,在下载页面Select Platform:选项选择linux-generic,然后把页面拉到底部,64位系统下载Linux - Generic (glibc 2.5) (x86, 64-bit),32位系统下载Linux - Generic (glibc 2.5) (x86, 32-bit)

步骤三、mysql相关目录chown及chmod

Linux安装msyql5.7.24及爬坑_第1张图片

chown -R root /home/
chmod -R 755 /home/
chown -R root /usr/local/mysql
chmod -R 755 /usr/local/mysql

步骤四、编写正确的my.cnf文件到/etc/下面

[client]
port = 3306
socket = /home/mysql_socket/mysql.sock
default-character-set = utf8

[mysqld]
port = 3306
socket = /home/mysql_socket/mysql.sock
pid-file = /home/mysql_pid/mysqld.pid
basedir = /usr/local/mysql
datadir = /home/mysql_data
log-error = /home/mysql_log/error.log
slow_query_log_file = /home/mysql_log/slow.log
tmpdir = /home/mysql_tmp/
server-id = 1
log_bin = /home/mysql_bin/mysql-bin
binlog_format = mixed
#超过7天的binlog删除
expire_logs_days = 7

user = root

max_connections = 30

character-set-server = utf8

default-storage-engine = INNODB

sql_mode = STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

max_allowed_packet=512M

slow_query_log = ON

long_query_time = 2

log_queries_not_using_indexes=0
# 为了安全考虑,关闭该功能
#local-infile=0

default-time_zone = '+8:00'

#关闭mysql的TCP/IP连接方式
#skip-networking

#限制远程访问
#bind-address = 127.0.0.1

log_output=file
#在5.7中,通过ssl方式连接mysql被作为默认和推荐。如果你并不需要(比如web端和db端同一台服务器,db服务器处于web端内网等),就可以不用使用ssl方式。
skip-ssl
#无密码登录(忘记root密码时打开)
# skip-grant-tables

#登陆失败次数限制(需要先安装插件、再开启)
#connection-control-failed-connections-threshold=5  
#限制重试时间,此处为毫秒,注意按需求换算 (需要先安装插件、再开启)
#connection-control-min-connection-delay=1800000    



[mysql]
#自动补全表、列名
auto-rehash


[mysqldump]
quick
#它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中
max_allowed_packet = 512M
#限制server接受的数据包大小;指代mysql服务器端和客户端在一次传送数据包的过程当中数据包的大小
net_buffer_length = 16384
#TCP/IP和套接字通信缓冲区大小,创建长度达net_buffer_length的行

步骤五、mysqld激活初始化获取初始密码

/usr/local/mysql/bin/mysqld --initialize --user=root --datadir=/home/mysql_data --basedir=/usr/local/mysql

初始密码在error.log中查看

 Linux安装msyql5.7.24及爬坑_第2张图片

步骤六、配置mysql环境变量

#JDK环境变量
JAVA_HOME=/usr/local/java
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

#mysql环境变量
MYSQL_HOME=/usr/local/mysql
PATH=$PATH:$MYSQL_HOME/bin
export PATH MYSQL_HOME

步骤七、启动mysql

如果不按下面方式启动会报错:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)

 

/usr/local/mysql/support-files/mysql.server start

步骤八、修改密码并测试登录数据库

alter user 'root'@'localhost' identified by '123456';
use mysql;
update user set user.Host='%' where user.User='root';
flush privileges;

Linux安装msyql5.7.24及爬坑_第3张图片

步骤九、添加mysql服务开机自启动,也方便重启

1、将服务文件拷贝到init.d下,并重命名为mysql
[root@localhost local]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
[root@localhost local]# chmod +x /etc/init.d/mysqld
3、添加服务
[root@localhost local]# chkconfig --add mysqld
4、显示服务列表
[root@localhost local]# chkconfig --list
5、重启服务器
[root@localhost local]# reboot

步骤十、防火墙端口开启、让mysql可以远程连接

#查看防火墙状态
systemctl status firewalld
#关闭防火墙
systemctl stop firewalld

如果防火请关闭了还不能远程连接,请继续执行下下面得操作

1.修改/etc/my.cnf 文件
找到bind-address = 127.0.0.1这一行
改为bind-address = 0.0.0.0即可

2.支持root用户允许远程连接mysql数据库
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;

你可能感兴趣的:(mysql)