centos7安装 mysql5.7.18

  1. 云栖社区>
  2. 博客>
  3. 正文

centos7安装 mysql5.7.18

技术小胖子 2017-11-16 16:37:00 浏览976
展开阅读全文

Mysql 5.7.18 安装部署

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
#安装好开发环境各种依赖包
yum groupinstall "Development tools"
  
#安装依赖包
yum search libaio # search for info
yum install libaio # install library
  
#新建用户组和用户
groupadd mysql
useradd mysql -g mysql
  
#建立存放数据库目录
mkdir /data
  
#解压包指定目录
wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.18.tar.gz
wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-i686.tar.gz
【625M   mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz】 这里使用官网编译好的二进制安装包
tar xf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /data
  
#重名名
mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql5.7
  
#安装
mkdir -p /data/mysql/data
  
#更改所有者
chown -R mysql:mysql /data/
  
#初始化数据库
/data/mysql/bin/mysqld --user=mysql --basedir=/data/mysql/ --datadir=/data/mysql/data --initialize
  
初始化后记下mysql root用户随机产生的密码 pychBtXfV3-A [见底部图片样例]
  
#拷贝启动程序文件到/etc/init.d/下面
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
  
#修改启动脚本文件
vim /etc/init.d/mysqld
修改66-73 行 的mysql程序路径 为我们自定义的路径
  
修改前:
 basedir=/usr/local/mysql
 bindir=/usr/local/mysql/bin
 if test -z "$datadir"
 then
  datadir=/usr/local/mysql/data
 fi
 sbindir=/usr/local/mysql/bin
 libexecdir=/usr/local/mysql/bin
  
修改后:
66   basedir=/data/mysql
 67   bindir=/data/mysql/bin
 68   if test -z "$datadir"
 69   then
 70     datadir=/data/mysql/data
 71   fi
 72   sbindir=/data/mysql/bin
 73   libexecdir=/data/mysql/bin
  
#先清理一下内存
sync
echo 3 > /proc/sys/vm/drop_caches
  
#配置my.cnf
[client]
#no-beep
socket =/data/mysql/mysql.sock
# pipe
# socket=0.i0
port=3306
  
[mysql]
default-character-set=utf8
  
  
[mysqld]
basedir=/data/mysql
datadir=/data/mysql/data
port=3306
pid-file=/data/mysql/mysqld.pid
  
#skip-grant-tables
skip-name-resolve
socket = /data/mysql/mysql.sock
character-set-server=utf8
default-storage-engine=INNODB
explicit_defaults_for_timestamp = true
  
# Server Id
server-id=1
max_connections=2000
query_cache_size=0
table_open_cache=2000
tmp_table_size=246M
thread_cache_size=300
  
#限定用于每个数据库线程的栈大小。默认设置足以满足大多数应用
thread_stack = 192k
key_buffer_size=512M
read_buffer_size=4M
read_rnd_buffer_size=32M
innodb_data_home_dir = /data/mysql/data
innodb_flush_log_at_trx_commit=0
innodb_log_buffer_size=16M
innodb_buffer_pool_size=256M
innodb_log_file_size=128M
innodb_thread_concurrency=128
innodb_autoextend_increment=1000
innodb_buffer_pool_instances=8
innodb_concurrency_tickets=5000
innodb_old_blocks_time=1000
innodb_open_files=300
innodb_stats_on_metadata=0
innodb_file_per_table=1
innodb_checksum_algorithm=0
back_log=80
flush_time=0
join_buffer_size=128M
max_allowed_packet=1024M
max_connect_errors=2000
open_files_limit=4161
query_cache_type=0
sort_buffer_size=32M
table_definition_cache=1400
binlog_row_event_max_size=8K
sync_master_info=10000
sync_relay_log=10000
sync_relay_log_info=10000
  
#批量插入数据缓存大小,可以有效提高插入效率,默认为8M
bulk_insert_buffer_size = 64M
interactive_timeout = 120
wait_timeout = 120
log-bin-trust-function-creators=1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
  
#启动mysql
Service mysqld start
  
#增加环境变量
vim /etc/profile
最下面加上:
export PATH=${PATH}:/data/mysql/bin
  
#使环境变量生效
source /etc/profile  或者 . /etc/profile
#修改密码
mysql –uroot –p
【密码为初始化数据库时给出的随机密码】
  
#修改密码,不然无法执行mysql相关命令操作
mysql>SET PASSWORD = PASSWORD('root');


图为初始化的时候:mysql5.7.png







      本文转自无形于有形  51CTO博客,原文链接:http://blog.51cto.com/jinchuang/1947014,如需转载请自行联系原作者




网友评论

登录后评论
0/500
评论