温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Percona MySQL 5.7 Linux如何通用二进制包安装

发布时间:2021-11-02 16:47:46 来源:亿速云 阅读:170 作者:小新 栏目:MySQL数据库

小编给大家分享一下Percona MySQL 5.7 Linux如何通用二进制包安装,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

MySQL对libaio库有依赖关系,如果没有这个包,数据目录初始化和接下来的服务启动会失败。
yum install libaio

创建软件安装目录
mkdir  /mysql_software_57

下载软件
Percona官网的下载页面有两个二进制Tar包,分别对应不同的发行版本
ssl100 - Debian/Ubuntu
ssl101 - for CentOS 6 and CentOS 7
cd /mysql_software
wget https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-5.7.17-11/binary/tarball/Percona-Server-5.7.17-11-Linux.x86_64.ssl101.tar.gz

解压安装包
[root@localhost mysql_software_57]# tar xvfz Percona-Server-5.7.17-11-Linux.x86_64.ssl101.tar.gz
[root@localhost mysql_software_57]# ls
Percona-Server-5.7.17-11-Linux.x86_64.ssl101
Percona-Server-5.7.17-11-Linux.x86_64.ssl101.tar.gz
[root@localhost mysql_software_57]# rm -rf Percona-Server-5.7.17-11-Linux.x86_64.ssl101.tar.gz 
[root@localhost mysql_software_57]# ls
Percona-Server-5.7.17-11-Linux.x86_64.ssl101
[root@localhost mysql_software_57]# mv Percona-Server-5.7.17-11-Linux.x86_64.ssl101/* .
[root@localhost mysql_software_57]# rmdir Percona-Server-5.7.17-11-Linux.x86_64.ssl101/

创建mysql用户
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql -s /bin/false mysql

创建数据目录和日志目录
[root@localhost mysql_software_57]# mkdir /mysql_data_57
[root@localhost mysql_software_57]# mkdir /mysql_log_57

[root@localhost mysql_software_57]# chmod 750 /mysql_data_57/

[root@localhost mysql_software_57]# chown -R mysql.mysql /mysql_data_57/
[root@localhost mysql_software_57]# chown -R mysql.mysql /mysql_log_57/

编辑配置文件
[root@localhost mysql_software_57]# vim /etc/my.cn

点击(此处)折叠或打开

  1. [client]

  2. port                                                            = 3306

  3. socket                                                          = /mysql_data_57/mysql.sock



  4. [mysqld]


  5. #MySQL Server layer basic setting

  6. server-id                                                       = 1

  7. port                                                            = 3306

  8. socket                                                          = /mysql_data_57/mysql.sock


  9. #MySQL Server layer directory setting

  10. basedir                                                         = /mysql_software_57

  11. datadir                                                         = /mysql_data_57

  12. tmpdir                                                          = /mysql_data_57



  13. #MySQL Server layer connection setting

  14. max_connections                                         = 900

  15. #MySQL Server layer connection setting

  16. max_connections                                         = 900

  17. max_connect_errors                                      = 100000

  18. max_allowed_packet                                      = 16M

  19. back_log                                                        = 50


  20. #MySQL Server layer binlog setting

  21. log_bin_trust_function_creators         = on

  22. expire_logs_days                                        = 5

  23. binlog_cache_size                                       = 1M

  24. log-bin                                                         = /mysql_log_57/mysql-bin

  25. binlog_format                                           = mixed


  26. #MySQL Server layer memory management setting

  27. tmp_table_size                                          = 64M

  28. max_heap_table_size                                     = 64M

  29. read_buffer_size                                        = 2M

  30. read_rnd_buffer_size                            = 16M

  31. sort_buffer_size                                        = 8M

  32. join_buffer_size                                        = 16M

  33. query_cache_size                                        = 0

  34. thread_stack                                            = 192K

  35. query_cache_size                                        = 0

  36. thread_stack                                            = 192K


  37. #MySQL Server layer transaction management setting

  38. transaction_isolation                           = READ-COMMITTED

  39. autocommit                                                      = OFF


  40. #MySQL Server layer log related setting

  41. log_warnings                                            = 2                                             ##this value have been the default value in MySQL 5.7

  42. slow_query_log                                          = ON

  43. long_query_time                                         = 2

  44. slow_query_log_file                                     = /mysql_log_57/mysql-slow.log

  45. #log_queries_not_using_indexes          = 1


  46. #MySQL Server layer other behaviour setting

  47. sql_mode                                                        = PIPES_AS_CONCAT,IGNORE_SPACE,STRICT_TRANS_TABLES

  48. event_scheduler                                         = ON

  49. lower_case_table_names                          = 1

  50. explicit_defaults_for_timestamp         = ON

  51. default-storage-engine                          = INNODB

  52. explicit_defaults_for_timestamp         = ON

  53. default-storage-engine                          = INNODB

  54. ##ft_min_word_len                                       = 4


  55. # Statistic

  56. # userstat                                                      = ON

  57. # thread_statistics                                     = ON

  58. # End statistics



  59. # MyISAM Engine related setting

  60. key_buffer_size                                         = 32M

  61. bulk_insert_buffer_size                         = 64M

  62. myisam_sort_buffer_size                         = 128M

  63. myisam_max_sort_file_size                       = 10G

  64. myisam_repair_threads                           = 1

  65. #myisam_recover


  66. #InnoDB Engine related setting

  67. #InnoDB memory management related setting

  68. innodb_buffer_pool_size                         = 2G

  69. innodb_max_dirty_pages_pct                      = 90

  70. innodb_sync_array_size                          = 16

  71. innodb_max_dirty_pages_pct                      = 90

  72. innodb_sync_array_size                          = 16


  73. #table open cache related

  74. table_open_cache                                        = 4096

  75. table_open_cache_instances                      = 16

  76. #innodb_additional_mem_pool_size        = 16M           ##This variable have been removed MySQL 5.7


  77. #innodb_numa_interleave                         = 1     ##Only work with Percona 5.6.27 and later


  78. ##InnoDB engine I/O related setting

  79. innodb_write_io_threads                         = 8

  80. innodb_read_io_threads                          = 8

  81. innodb_flush_method                                     = O_DIRECT


  82. #InnoDB engine File management related setting

  83. innodb_data_file_path                           = ibdata1:12M:autoextend        #10M-->12M, 12M is default values, it is meaningless to set it to 10M

  84. innodb_file_per_table                           = 1     #this value have been the default value in MySQL 5.7

  85. innodb_data_file_path                           = ibdata1:12M:autoextend        #10M-->12M, 12M is default values, it is meaningless to set it to 10M

  86. innodb_file_per_table                           = 1     #this value have been the default value in MySQL 5.7

  87. innodb_file_format                                      = Barracuda  #this value have been the default value in MySQL 5.7


  88. #InnoDB engine undo log related setting

  89. innodb_undo_directory                           = /mysql_data_57

  90. innodb_undo_tablespaces                         = 4

  91. innodb_purge_batch_size                         = 5000

  92. innodb_purge_threads                            = 8


  93. #InnoDB engine redo log related setting

  94. innodb_flush_log_at_trx_commit          = 2

  95. innodb_log_buffer_size                          = 8M

  96. innodb_log_file_size                            = 256M

  97. innodb_log_files_in_group                       = 3

  98. innodb_log_group_home_dir                       = /mysql_log_57


  99. #InnoDB engine lock and transaction management setting

  100. innodb_lock_wait_timeout                        = 120

  101. innodb_lock_wait_timeout                        = 120


  102. #InnoDB engine other behaviour setting

  103. innodb_large_prefix                                     = ON       ##this value have been the default value in MySQL 5.7

  104. innodb_strict_mode                                      = ON        ##this value have been the default value in MySQL 5.7

  105. innodb_checksum_algorithm                       = crc32 ##this value have been the default value in MySQL 5.7



  106. [mysqldump]

  107. quick

  108. max_allowed_packet                                      = 16M


  109. [mysql]

  110. no-auto-rehash

  111. # Only allow UPDATEs and DELETEs that use keys.

  112. #safe-updates


  113. [myisamchk]

  114. key_buffer_size                                         = 512M

  115. sort_buffer_size                                        = 512M

  116. key_buffer_size                                         = 512M

  117. sort_buffer_size                                        = 512M

  118. read_buffer                                             = 8M

  119. write_buffer                                            = 8M


  120. [mysqlhotcopy]

  121. interactive-timeout


  122. [mysqld_safe]

  123. # Increase the amount of open files allowed per process. Warning: Make

  124. # sure you have set the global system limit high enough! The high value

  125. # is required for a large number of opened tables

  126. open-files-limit                                        = 8192

  127. log-error                                                       = /mysql_log_57/mysqld_error.log


初始化MySQL数据库的数据文件路径,并且创建系统表
5.7.6及以上版本,要使用mysqld来初始化数据库
[root@localhost mysql_software_57]# bin/mysqld --defaults-file=/etc/my.cnf --initialize-insecure --user=mysql
...
2017-04-02T07:54:13.022906Z 0 [Note] Shutting down slave threads
2017-04-02T07:54:13.022915Z 0 [Note] Forcefully disconnecting 0 remaining clients
2017-04-02T07:54:13.068736Z 0 [Note] Binlog end
2017-04-02T07:54:13.072400Z 0 [Note] InnoDB: FTS optimize thread exiting.
2017-04-02T07:54:13.072548Z 0 [Note] InnoDB: Starting shutdown...
2017-04-02T07:54:13.173584Z 0 [Note] InnoDB: Dumping buffer pool(s) to /mysql_data_57/ib_buffer_pool
2017-04-02T07:54:13.174062Z 0 [Note] InnoDB: Buffer pool(s) dump completed at 170402  0:54:13
2017-04-02T07:54:14.956340Z 0 [Note] InnoDB: Waiting for page_cleaner to finish flushing of buffer pool
2017-04-02T07:54:16.679052Z 0 [Note] InnoDB: Shutdown completed; log sequence number 2411492
2017-04-02T07:54:16.679587Z 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"

启动数据库
[root@localhost mysql_software_57]# bin/mysqld_safe --defaults-file=/etc/my.cnf &

[root@localhost mysql_software_57]# 2017-04-02T08:02:36.065640Z mysqld_safe Logging to '/mysql_log_57/mysqld_error.log'.
2017-04-02T08:02:36.068876Z mysqld_safe error: log-error set to '/mysql_log_57/mysqld_error.log', however file don't exists. Create writable for user 'mysql'.

[1]+  Exit 1                  bin/mysqld_safe --defaults-file=/etc/my.cnf

日志文件不存在报错,手动创建日志文件
[root@localhost mysql_log_57]# su - mysql
[mysql@localhost ~]$ cd /mysql_log_57/
[mysql@localhost mysql_log_57]$ touch mysqld_error.log

再次启动数据库
[root@localhost mysql_software_57]# bin/mysqld_safe --defaults-file=/etc/my.cnf &
[1] 37100
[root@localhost mysql_software_57]# 2017-04-02T08:03:44.853263Z mysqld_safe Logging to '/mysql_log_57/mysqld_error.log'.
2017-04-02T08:03:44.857901Z mysqld_safe Logging to '/mysql_log_57/mysqld_error.log'.
2017-04-02T08:03:44.922034Z mysqld_safe Starting mysqld daemon with databases from /mysql_data_57

更改root密码

[root@localhost mysql_software_57]# bin/mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.17-11-log Percona Server (GPL), Release 11, Revision f60191c

Copyright (c) 2009-2016 Percona LLC and/or its affiliates
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> set password = password('root');
Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

以上是“Percona MySQL 5.7 Linux如何通用二进制包安装”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI