Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

时间:2022-07-03 21:03:14

 

本文出处:http://www.cnblogs.com/wy123/p/6815049.html 

 

 

最新在学习MySQL,纯新手,对Linux了解的也不多,因为是下载的最新版的MySQL(MySQL5.7.18)二进制包,CentOS7.2下测试安装,方便以后折腾。
大概步骤如下,安装删除反复折腾了几遍,按照以下步骤,应该没啥问题了。
也没有想象中的复杂,大部分步骤都是参考网上的,照做就是了,出错的话,多尝试,多查资料。

 

操作系统版本

   Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

创建mysql组和用户

   Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

下载最新版的MySQL 5.7.18二进制包,上传至服务器的usr/local目录下

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

解压MySQL二进制包

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

如下是解压之后的,并且重命名文件夹之后的文件信息

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

更改所属的组和用户

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

解压之后的MySQL文件包含的内容

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

查看support-files文件夹的内容,发现并没有my_default.cnf默认的配置文件,如果没有默认的配置文件,需要手动创建一个my_default.cnf配置文件

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

从网上找了一个配置文件,如下,上传到supp-files文件夹中,当然这个配置文件可以根据需要自行修改,

  20170505补充:这一步应该不对,如果没有默认配置文件,似乎也能正常启动。后面再琢磨琢磨。

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]



sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

# 一般配置选项
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
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

[client]
/bin/bash: Q: command not found

 

如下,将上述默认配置文件上传至support-files文件夹中

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

注册和初始化MySQL服务

  这一点比较坑,网上的教程大多是mysql_install_db 方式安装的,这一步也是遇到问题最最多的,折腾了好久,但是mysql_install_db 命令是不推荐的,也提示使用mysqld来安装
  在安装mysql 5.7.18的时候也是各种报错,经过各种尝试之后吧,采用如下命名方式安装,只要没有Error,警告信息Warning先不理它

bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql/  --datadir=/usr/local/mysql/data/ 

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

复制上述的my_default.cnf和mysql.server配置文件到etc目录,之前复制过该文件到etc目录,它这里提示是否覆盖,输入Y覆盖

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

启动MySQL服务

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

连接至MySQL,默认没有密码,直接回车后连接至MySQL

 Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

修改MySQL的root密码

 Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

修改可远程访问

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

  

重启MySQL服务

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

此时本地可以正常使用MySQL

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

 

 

测试远程连接

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)