Linux下通过二进制源码安装Mysql5.7(5.7安装和命令

2018-01-16  本文已影响0人  程序员学园

这里我选择官网下载源码包编译安装
参照一:linux在配置的时候大家是如何去选择用编译安装还是yum安装
参照二:linux下mysql安装

一、准备工作:

Mysql官网下载地址

二、踏坑总结:

2.1关于初始化:
mysql5.7和之前版本不同,很多资料上都是这个命令:../scripts/mysql_install_db --user=mysql,而mysql5.7的mysql_install_db命令是在bin目录下 的并且建议 用 mysqld --initialize命令

5.7之后用过使用

bin/mysqld --initialize --user=mysql --basedir=/Ultrapower/test/mysql --datadir=/Ultrapower/test/mysql/data

2.2关于配置文件:
好多资料都有这样一段

cp support-files/my-default.cnf /etc/my.cnf  

就是把mysql/support-files/my-default.cnf下的配置文件复制到/etc/my.cnf ,但是5.7之后是没有my-default.cnf配置文件的,这个不影响。

正常安装之后, /etc/my.cnf应该存在,可以不用管上面复制那一步。下面是我用的配置文件,可以参照使用。

# 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]

# 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 = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
general_log_file = /var/log/mysql/mysql.log
general_log = 1
# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# socket = .....

#kip-external-locking
skip-name-resolve

basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
pid-file=/usr/local/mysql/data/mysql.pid
port=3306
character_set_server=utf8
init_connect='SET NAMES utf8'
log-error=/usr/local/mysql/data/mysqld.err

slow_query_log = 1
slow_query_log_file =/usr/local/mysql/data/slow-query.log
long_query_time = 1
log-queries-not-using-indexes
max_connections = 1024
back_log = 128
wait_timeout = 100
interactive_timeout = 200
key_buffer_size=256M
query_cache_size = 256M
query_cache_type=1
query_cache_limit=50M
max_connect_errors=20
sort_buffer_size = 2M
max_allowed_packet=16M
join_buffer_size=2M
thread_cache_size=200
innodb_buffer_pool_size = 2048M
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size=32M
innodb_log_file_size=128M
innodb_log_files_in_group=3

server_id=1
log-bin=mysql-bin
binlog_cache_size=2M
max_binlog_cache_size=8M
max_binlog_size=512M
expire_logs_days=7
read_buffer_size=1M
read_rnd_buffer_size=16M
bulk_insert_buffer_size=64M


# 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.
# jo

2.3关于启动:用命令systemctl start mysql.service报错

[csy@root@instance-m4tjyg0q ~]# systemctl start mysql.service  
Error getting authority: Error initializing authority: Error calling StartServiceByName 
for org.freedesktop.PolicyKit1: Timeout was reached (g-io-error-quark, 24)
Could not watch jobs: Connection timed out
[csy@root@instance-m4tjyg0q ~]# 

正确启动方式是

#/etc/init.d/mysql start   或者   serivce mysql start  或者  bin/mysqld_safe&  

2.4关于客户端远程连接出现权限问题:

host is not allowed to connect to this MySql server

因为创建用户的时候host 是 localhost所以其它外部ip无访问,需要授权

GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

%是任意ip

参照:Navicat连接不上Linux服务器上的MySQL

其它使用问题遇到再百度解决吧~

上一篇 下一篇

猜你喜欢

热点阅读