千家信息网

MySQL5.7.18 for Linux7.2 源码安装

发表于:2025-02-06 作者:千家信息网编辑
千家信息网最后更新 2025年02月06日,源码安装MySQL比较麻烦,需要安装依赖包,然后进行编译,时间较长,建议安装二进制的MySQL,时间比较快;用到的软件包:mysql-5.7.18.tar.gzboost_1_59_0.tar.gz1
千家信息网最后更新 2025年02月06日MySQL5.7.18 for Linux7.2 源码安装

源码安装MySQL比较麻烦,需要安装依赖包,然后进行编译,时间较长,建议安装二进制的MySQL,时间比较快;


用到的软件包:

mysql-5.7.18.tar.gz

boost_1_59_0.tar.gz


1、安装依赖包

yum -y install gcc* gcc-c++ ncurses* ncurses-devel* cmake* bison* libgcrypt* perl*


2、创建MySQL用户:

[root@localhost ~]# mkdir -p /mysql/data

[root@localhost ~]# mkdir -p /mysql/mysql5718

[root@localhost ~]# chown -R mysql.mysql /mysql/


3、调整系统参数

[root@localhost ~]# vim /etc/security/limits.conf

* soft nproc 65535

* hard nproc 65535

* soft nofile 65535

* hard nofile 65535


[root@localhost ~]# vi /etc/security/limits.d/20-nproc.conf

* soft nproc 65535


[root@localhost ~]# vi /etc/profile

ulimit -u 65535

ulimit -n 65535


4、下载并解压软件

[root@localhost ~]# tar zxvf mysql-5.7.18.tar.gz -C /usr/src/

[root@localhost ~]# tar zxvf boost_1_59_0.tar.gz -C /mysql/

[root@localhost ~]# chown -R mysql.mysql /mysql/

[root@localhost ~]# chmod -R 755 /mysql/

[root@localhost ~]# chown -R mysql.mysql /usr/src/mysql-5.7.18/


5、开始编译安装MySQL5.7.18

[root@localhost ~]# su - mysql


[mysql@localhost ~]$ cd /usr/src/mysql-5.7.18/

[mysql@localhost mysql-5.7.18]$cmake . -DCMAKE_INSTALL_PREFIX=/mysql/mysql5718 \

-DMYSQL_DATADIR=/mysql/data \

-DDOWNLOAD_BOOST=1 \

-DWITH_BOOST=/mysql/boost_1_59_0


[mysql@localhost mysql-5.7.18]$ make -j 4 (并行4个进程同时进行编译)

[mysql@localhost mysql-5.7.18]$ make install


6、初始化数据库:

[mysql@localhost ~]$ /mysql/mysql5718/bin/mysqld --initialize --user=mysql --basedir=/mysql/mysql5718/ --datadir=/mysql/data/


---注意,在初始化数据库会生成数据库的默认密码,这个密码要记住,一会登录数据库要用


7、编辑my.cnf配置文件,启动数据库

[mysql@localhost ~]$ vim my.cnf (该配置文件仅供参考)

[client]

socket = /mysql/data/mysql.sock

default_character_set = utf8


[mysql]

socket=/mysql/data/mysql.sock

[mysqld]

server_id = 1607

port = 3306

basedir = /mysql/mysql5718/

datadir = /mysql/data/

socket = /mysql/data/mysql.sock

pid_file = /mysql/data/mysql.pid

log_error = /mysql/data/mysql_error.log

log_bin = /mysql/data/mysql_bin

relay_log = /mysql/data/relay_bin

character_set_server = utf8

collation_server = utf8_general_ci

innodb_buffer_pool_size = 8G

innodb_buffer_pool_instances = 8

innodb_log_file_size = 1G

innodb_log_files_in_group = 3

innodb_log_buffer_size = 24M

innodb_flush_log_at_trx_commit = 1

innodb_file_per_table = 1

innodb_flush_method = O_DIRECT

innodb_io_capacity = 200

innodb_io_capacity_max = 600

innodb_thread_concurrency = 0

innodb_autoinc_lock_mode = 2

innodb_lock_wait_timeout = 60

innodb_read_io_threads = 4

innodb_write_io_threads = 4

innodb_max_dirty_pages_pct = 80

innodb_autoextend_increment = 512

innodb_checksum_algorithm = NONE

innodb_doublewrite = 0

innodb_use_native_aio = 1

innodb_open_files = 8192

sync_binlog = 1

sync_relay_log = 1

relay_log_info_repository = TABLE

master_info_repository = TABLE

expire_logs_days = 10

binlog_format = ROW

transaction-isolation = READ-COMMITTED

concurrent_insert = 2

skip_slave_start = TRUE

back_log = 2000

thread_stack = 256k

thread_cache_size = 256

key_buffer_size = 256M

tmp_table_size = 64M

read_buffer_size = 2M

read_rnd_buffer_size = 8M

sort_buffer_size = 2M

join_buffer_size = 2M

query_cache_size = 0

query_cache_type = 0

max_heap_table_size = 64M

binlog_cache_size = 2M

table_open_cache = 8192

max_allowed_packet = 64M

bulk_insert_buffer_size = 64M

max_connect_errors = 100000

max_connections = 500

connect_timeout = 300

wait_timeout = 86400

interactive_timeout = 86400

lower_case_table_names = 1

open_files_limit = 20480

skip_name_resolve

skip_external_locking

explicit_defaults_for_timestamp = TRUE

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES


[mysql@localhost ~]$ /mysql/mysql5718/bin/mysqld_safe --defaults-file=/mysql/data/my.cnf --user=mysql &


8、进入数据库检查:

[mysql@localhost ~]$ /mysql/mysql5718/bin/mysql -u root -p --socket=/mysql/data/mysql.sock

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 7

Server version: 5.7.18-log MySQL Community Server (GPL)


Copyright (c) 2000, 2017, 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='123456'; (因为刚才使用的密码是个默认的登录密码,所以我们要修改)

mysql> flush privileges;


然后重新登录数据库,进行检查:

[mysql@localhost ~]$ /mysql/mysql5718/bin/mysql -u root -p --socket=/mysql/data/mysql.sock

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.


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


mysql> \s

--------------

/mysql/mysql5718/bin/mysql Ver 14.14 Distrib 5.7.18, for linux-glibc2.5 (x86_64) using EditLine wrapper


Connection id: 7

Current database:

Current user: root@localhost

SSL: Not in use

Current pager: stdout

Using outfile: ''

Using delimiter: ;

Server version: 5.7.18-log MySQL Community Server (GPL)

Protocol version: 10

Connection: Localhost via UNIX socket

Server characterset: utf8

Db characterset: utf8

Client characterset: utf8

Conn. characterset: utf8

UNIX socket: /mysql/data/mysql.sock

Uptime: 25 min 16 sec


Threads: 1 Questions: 19 Slow queries: 0 Opens: 110 Flush tables: 1 Open tables: 103 Queries per second avg: 0.012

--------------


mysql>


数据 数据库 密码 登录 编译 文件 时间 软件 检查 配置 源码 仅供参考 二进制 参数 同时 建议 用户 系统 软件包 进程 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络技术维护的基本内容 数据库系统实例源程序 个人信用信息数据库的核心 脚本下载nc 数据库 中拓互联网络科技有限公司是骗子 微云笔记服务器一直繁忙 阳城区网络安全执法检查 在两列里找到相同数据库 步行街平面图软件开发 银川创利网络技术有限公司 网络安全必要性概述 涌涌易网络技术有限公司 以下哪个数据库具有文献传递功能 网络安全知识答题入口小学 北京天盈九州网络技术有限公司 服务器管理里有哪些服务 软件开发会涉及什么知识 机架服务器设计 中国医院感染率数据库 糖豆人与服务器 综合软件开发服务价格 江苏网络营销软件开发介绍 网络安全产品手绘美甲 零基础自学软件开发买什么书 陕西淘麦网络技术有限公司电话 青岛顺淘网络技术有限公司 连接服务器管理接口的线叫啥 吉中多互联网科技 温州戴尔服务器产品介绍 河北电子邮件中继服务器
0