设为首页 收藏本站
查看: 776|回复: 0

[经验分享] centos7部署mysql

[复制链接]

尚未签到

发表于 2018-4-20 07:30:41 | 显示全部楼层 |阅读模式
1.创建目录及用户

useradd mysql -s /sbin/nologin -M
mkdir /tools
mkdir /usr/local/mysql-5.7.20/{conf,tmp} -p
mkdir /data/mysql-5.7.20/data -p
2.下载软件

cd /tools
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.20.tar.gz
tar xf mysql-boost-5.7.20.tar.gz
cd mysql-5.7.20
3.下载依赖

yum -y install gcc gcc-devel gcc-c++ gcc-c++-devel autoconf* automake* zlib* libxml* ncurses-devel
yum -y install ncurses libgcrypt* libtool* cmake openssl openssl-devel bison    bison-devel
yum -y install imake perl-Data-Dumper libaio-devel boost boost-doc boost-devel
yum -y install ncurses5-devel  libxml2-devel expat-devel libaio bzr
4.编译

cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.7.20 \
-DSYSCONFDIR=/usr/local/mysql-5.7.20/conf \
-DMYSQL_DATADIR=/data/mysql-5.7.20/data \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/tools/mysql-5.7.20/boost/boost_1_59_0 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.7.20/tmp/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DEXTRA_CHARSETS=all \
-DENABLE_DOWNLOADS=1 \
-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 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_ZLIB:STRING=1 \
-DENABLE_DTRACE=0 \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_EMBEDDED_SERVER=1 \
  #如果编译错误,有一个编译缓存文件需要删除
rm -f CMakeCache.txt

5.安装

make && make install
6.软连接

ln -s /usr/local/mysql-5.7.20  /usr/local/mysql
7.配置文件

cat >>/etc/my.cnf<<EOF
[client]
#password     = your_password
port          = 3306
socket        = /tmp/mysqld.sock
[mysqld]
port                            = 3306
basedir                         = /usr/local/mysql
datadir                         = /data/mysql/data/
socket                          = /tmp/mysqld.sock
character-set-server            = UTF8
default-storage-engine          = InnoDB
lower_case_table_names          = 1
user                            = mysql
open_files_limit                = 102400
#sql-mode                       = "STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
#explicit_defaults_for_timestamp = true
symbolic-links                  = 0
skip-external-locking
skip-slave-start
#============================= Network ===============================
back_log                = 50
max_connections         = 800
max_user_connections    = 0
max_connect_errors      = 999999999
net_buffer_length       = 8K
max_allowed_packet      = 64M
wait_timeout            = 388000
interactive_timeout     = 388000
#max_long_data_size      = 1024M
#========================== Session Thread ===========================
thread_cache_size   = 128
thread_stack        = 512K
#thread_concurrency  = 4
#============================ Table Cache ============================
#table-cache         = 512
table_open_cache    = 512
join_buffer_size    = 16M
sort_buffer_size    = 16M
query_cache_type    = OFF
table_definition_cache  = 768
#============================= Temptable =============================
tmp_table_size      = 128M
max_heap_table_size = 128M
tmpdir              = /data/mysql/tmp/
#======================= Query Specific options ======================
#query_cache_limit              = 32M
query_cache_min_res_unit        = 4096
query_cache_size                = 0
#query_cache_strip_comments     = 0
query_cache_type                = 1
query_cache_wlock_invalidate    = 0
#====================== MyISAM Specific options ======================
read_buffer_size            = 2M
read_rnd_buffer_size        = 16M
key_buffer_size             = 512M
myisam_sort_buffer_size     = 256M
myisam_max_sort_file_size   = 10G
myisam_repair_threads       = 1
#myisam_recover_options
#====================== INNODB Specific options ======================
innodb_data_home_dir           = /data/mysql/data/
innodb_fast_shutdown            = 1
innodb_force_recovery           = 0
innodb_buffer_pool_size         = 512M
innodb_log_buffer_size          = 64M
innodb_log_file_size            = 512M
innodb_log_files_in_group       = 2
innodb_data_file_path           = ibdata1:100M:autoextend
innodb_file_format              = Antelope
innodb_file_per_table           = 1
innodb_write_io_threads         = 8
innodb_read_io_threads          = 8
innodb_io_capacity              = 200
innodb_open_files               = 1024
innodb_purge_threads            = 1
innodb_thread_concurrency       = 34
innodb_flush_log_at_trx_commit  = 2
innodb_flush_method             = O_DIRECT
innodb_max_dirty_pages_pct      = 90
innodb_lock_wait_timeout        = 1000
#innodb_additional_mem_pool_size = 67108864
innodb_strict_mode                = 1
innodb_use_native_aio             = 1
#innodb_status_file              = 1
#================================ Log ================================
log-error                       = /data/mysql/log/error.log
#log-warnings
#skip-log-warnings
#general-log                     = 1
#general_log_file                = /data/mysql/log/general.log
#slow-query-log
#slow_query_log_file             = /data/mysql/log/slow.log
#long_query_time                 = 60
#log-queries-not-using-indexes
#==================== Replication related settings ===================
server-id                    = 156
#replicate-do-db              =
#replicate-wild-do-table      =
#replicate-ignore-db          =
#replicate-ignore-table       =
#replicate-wild-ignore-table  =
#binlog_format  MIXED
#binlog_cache_size  = 32K
#max_binlog_size    = 512M
#sync_binlog        = 0
#innodb_support_xa  = 1
#log-bin             = mysql-bin
#log-bin-index      = mysql-bin.index
#relay-log          = mysql-relay-bin
#relay-log-index    = mysql-relay-bin.index
#expire_logs_days   = 10
#log_slave_updates  = 1
#relay-log-purge    = 1
#slave-skip-errors=1146,1062,1050,1054,1136,1364,1051
#skip-slave-start
[mysqld_safe]
log-error = /data/mysql/log/mysqld_safe.log
pid-file=/data/mysql/mysqld.pid
[mysqldump]
quick
max_allowed_packet  = 1024M
[mysql]
no-auto-rehash
#Remove the next comment character if you are not familiar with SQL
#safe-updates
default-character-set = utf8
[myisamchk]
key_buffer_size     = 20M
sort_buffer_size    = 20M
read_buffer         = 2M
write_buffer        = 2M
[mysqlhotcopy]
interactive-timeout
EOF
8.创建pid文件修改属主

mkdir /data/mysql/{data,tmp,log}
touch /data/mysql/mysqld.pid
chown -R mysql:mysql /data/mysql
9.初始化启动

#初始化
/usr/local/mysql/bin/mysqld  --defaults-file=/etc/my.cnf --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data
#启动服务
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf  --user=mysql &
#查看初始密码登陆mysql(这个日志中记录了初始密码)
cat /data/mysql/log/error.log
mysql -uroot -p
密码:
mysql> set password for root@localhost = PASSWORD('123456');
mysql> flush privileges;

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-449341-1-1.html 上篇帖子: kickstart无人值守安装CentOS7 下篇帖子: centos7安装Discuz!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表