doina

一个小菜鸟运维工程师.

mysql5.7.2 编译安装

下载mysql及boost

wget http://118.144.79.137/wicp_soft/mysql-5.7.20.tar.gz
wget http://118.144.79.137/wicp_soft/boost_1_59_0.tar.gz

#创建用户和用户组

groupadd mysql
useradd -g mysql mysql -s /sbin/nologin

创建数据目录

mkdir -p "/data/mysql"
mkdir -p "/data/mysql_binlog/"
chown  -R mysql.mysql /data/mysql
chown  -R mysql.mysql /data/mysql_binlog/

编译安装mysql

yum -y install gcc gcc-c++ ncurses ncurses-devel cmake
tar -xvf mysql-5.7.20.tar.gz
tar -xvf boost_1_59_0.tar.gz
cd mysql-5.7.20


cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_BOOST=./../boost_1_59_0  \
-DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1  \
-DWITH_PARTITION_STORAGE_ENGINE=1  \
-DWITH_FEDERATED_STORAGE_ENGINE=1  \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1  \
-DWITH_MYISAM_STORAGE_ENGINE=1  \
-DENABLED_LOCAL_INFILE=1 -DENABLE_DTRACE=0  \
-DDEFAULT_CHARSET=utf8mb4  \
-DDEFAULT_COLLATION=utf8mb4_general_ci -DWITH_EMBEDDED_SERVER=1

make -j`lscpu | grep ^CPU\(s\):|awk '{print $2}'`    
make install

初始化mysql

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

修改配置文件

curl http://118.144.79.137/wicp_soft/my.cnf  > /etc/my.cnf

cat /etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8mb4

[mysqld]
server-id = 1
gtid-mode=on
enforce-gtid-consistency=1
port = 3306
log-bin =/data/mysql_binlog/mysql-bin
log-bin_index =/data/mysql_binlog/mysql-bin.index
binlog-format=row
skip_slave_start=1

socket = /tmp/mysql.sock
basedir = /usr/local/mysql
datadir = /data/mysql
pid-file = /data/mysql/mysql.pid
init-connect = 'SET NAMES utf8mb4'
character-set-server = utf8mb4
log_error = /data/mysql/mysql-error.log
default_storage_engine = InnoDB

expire_logs_days = 7
max_connections = 3000
max_connect_errors = 6000
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /data/mysql/mysql-slow.log
performance_schema = 0
lower_case_table_names = 1
innodb_flush_log_at_trx_commit = 2
interactive_timeout = 28800
wait_timeout = 28800
max_allowed_packet = 512M
connect_timeout = 60
net_read_timeout = 120
innodb_buffer_pool_size = 8G
group_concat_max_len = 102400

[mysqldump]
quick
max_allowed_packet = 1024M

[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M

启动mysql

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
/etc/init.d/mysqld  start

创建软连接

ln -s /usr/local/mysql/bin/mysql /usr/bin/
ln -s /usr/local/mysql/bin/mysql /usr/sbin/

初始化root密码

mysql -uroot
mysql> alter user 'root'@'localhost' identified by 'baiyongjie';
mysql> flush privileges;

#使用密码登录
mysql -uroot -pbaiyongjie
点赞

发表评论

邮箱地址不会被公开。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据