下载安装包解压到指定目录
https://dev.mysql.com/downloads/mysql/
下载二进制安装包
创建并修改配置文件my-3306.cnf
mkdir $MysqlInstallDir/conf
vim $MysqlInstallDir/conf/my-3306.cnf
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
# This was formally known as [safe_mysqld]. Both versions are currently parsed.
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
syslog
[mysqld]
# Basic Settings
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
# Engine
default-storage-engine = InnoDB
# Listening IP
bind-address = 0.0.0.0
# Safety
max-connect-errors = 1000000
max_allowed_packet = 64M
skip-name-resolve
sysdate-is-now = 1
innodb = FORCE
innodb-strict-mode = 1
wait_timeout = 60
interactive_timeout = 60
# Buffers
sort_buffer_size = 4M
read_buffer_size = 2M
join_buffer_size = 8M
read_rnd_buffer_size = 16M
thread_concurrency = 8 # Max CPU * 2
# MyISAM
key-buffer-size = 32M
myisam-recover = FORCE,BACKUP
myisam_sort_buffer_size = 64M
# CACHES AND LIMITS #
tmp-table-size = 128M
max-heap-table-size = 128M
query-cache-type = 0
query-cache-size = 0
query_cache_limit = 1M
max-connections = 5000
thread-cache-size = 50
thread_stack = 192K
open-files-limit = 65535
table-definition-cache = 1024
table-open-cache = 2048
# Bin logs
binlog-format = ROW
log-bin = /var/lib/mysql/mysql-bin
log-slave-updates = 1
expire-logs-days = 5
sync-binlog = 1
max_binlog_size = 100M
server-id = 1 # randomize it incase of multiple servers
# InnoDB
innodb-buffer-pool-size = 2048M
innodb_buffer_pool_instances = 8
innodb_additional_mem_pool_size = 20M
innodb_log_buffer_size = 8M
innodb-log-files-in-group = 2
innodb-log-file-size = 256M
innodb-file-per-table = 1
innodb-flush-log-at-trx-commit = 1
innodb-flush-method = O_DIRECT
# With virtual synchrony redundancy, make write queries faster
innodb_doublewrite = 1
# This is a recommended tuning variable for performance
innodb_locks_unsafe_for_binlog = 1
# LOGGING
general_log_file = /var/log/mysql/mysql.log
log-error = /var/log/mysql/mysql-error.log
log-queries-not-using-indexes = 1
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[isamchk]
key_buffer = 16M
#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
初始化数据库
添加mysql 环境变量:
vim ~/.bash_profile,添加:
export PATH=$PATH:$MysqlInstallDir/bin
在shell客户端执行如下命令:
in/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
创建初始化脚本:
mkdir $MysqlInstallDir/sbin
vim startmysql3306.sh,写入如下内容:
mysqld_safe --defaults-file=/Users/hadoop/appcom/mysql/conf/my-3306.cnf >/dev/null 2>&1 &
启动mysql
vim ~/.bash_bash,添加mysql的sbin目录到path,添加:
#mysql path
MYSQL_HOME=/$MYSQLInstallPath/mysql
export PATH=$PATH:$MYSQL_HOME/bin:$MYSQL_HOME/sbin
source使环境变量生效:
source ~/.bash_profile
执行启动:
startmysql3306.sh
查看是否启动成功
执行命令:ps -ef|grep mysql 查看进程是否存在。
设置root密码
mysql -uroot --socket=/$SocketFile/mysqld.sock -p‘XXX’
mysql> alter user 'root'@'localhost' identified by 'root';