centos7.2离线安装mysql5.7.18.tar.gz
程序员文章站
2023-11-28 10:03:40
因为网络隔离,无法使用yum方式安装mysql,这里介绍linux服务器上手动离线安装mysql的方法。
目的
离线安装mysql服务
服务器:centos7.2...
因为网络隔离,无法使用yum方式安装mysql,这里介绍linux服务器上手动离线安装mysql的方法。
目的
离线安装mysql服务
服务器:centos7.2,配置本地yum源
mysql版本:mysql5.7.18
步骤
1.下载安装包mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz,安装包传输到目的服务器/tmp目录
2.my.cnf文件(见文末)传输到目的服务器的/tmp目录
3.创建用户和相应文件夹:
# prepare groupadd mysql useradd -r -g mysql -s /bin/false mysql yum install -y autoconf mkdir /apps mkdir /logs mkdir /data mkdir -p /data/mysql7006/data && chown -r mysql:mysql /data/mysql7006 mkdir /logs/mysql7006 && chown -r mysql:mysql /logs/mysql7006 touch /logs/mysql7006/error-log.err && chown -r mysql:mysql /logs/mysql7006/error-log.err
4.安装
cd /tmp tar zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql mv mysql /apps/mysql cp my.cnf /apps/mysql/ chown -r mysql:mysql /apps/mysql/ # 初始化数据库, cd /apps/mysql ./bin/mysqld --initialize --user=mysql --basedir=/apps/mysql/ --datadir=/data/mysql7006/data/
初始化过程中会生成一个默认密码记得记下来,后续修改用。
5.注册service(可以不做)
# 依据情况修改support-files/mysql.server cp support-files/mysql.server /etc/init.d/mysql systemctl start mysql.service # 添加开机启动 chkconfig mysql.server on
6.启动数据库/apps/mysql/bin/mysqld_safe --defaults-file=/apps/mysql/my.cnf &
7.修改默认密码:
/apps/mysql/bin/mysqladmin -u root password 'password' --port=7006 --socket=/data/mysql7006/mysql.sock -p # 修改后清空linux的history记录 history -c # 登陆测试: /apps/mysql/bin/mysql -u root --port=7006 --socket=/data/mysql7006/mysql.sock -p
8.防火墙、赋权(按需做)
# 防火墙 firewall-cmd --zone=public --add-port=7006/tcp --permanent systemctl restart firewalld firewall-cmd --zone=public --query-port=7006/tcp # 赋权给登陆用户 use mysql; grant all privileges on *.* to user@'ip' identified by "password"; flush privileges; select host,user,password from user;
9.本地隐藏密码登录(可以不做)
## 使用mysql_config_editor 制作登录文件 /apps/mysql/bin/mysql_config_editor set --login-path=root_pass --user=root --port=7006 --socket=/data/mysql7006/mysql.sock --password ## 输入密码:****** ## 文件会加密存储于用户根目录下.mylogin.cnf /apps/mysql/bin/mysql_config_editor print --all ## 下次登录时直接敲: /apps/mysql/bin/mysql --login-path=root_pass # 再省事一些:set alias # 打开file .bashrc,添加 alias db7006='/apps/mysql/bin/mysql --login-path=root_pass' # 然后退出执行: source .bashrc ## 下次登录时直接敲: db7006
附录
my.cnf文件
主要功能:全局utf8字符集、自定义端口、数据文件夹、日志文件夹、默认引擎innodb(支持事务,对xtrabackup友好)、跳过客户端登陆时的dns解析
[client] port=7006 default-character-set=utf8 [mysqld] skip-name-resolve secure_file_priv="/" character-set-server=utf8 user=mysql server_id=20180917 port=7006 socket=/data/mysql7006/mysql.sock pid-file=/data/mysql7006/mysql.pid basedir=/apps/mysql datadir=/data/mysql7006/data log-error=/logs/mysql7006/error-log log-bin=/logs/mysql7006/bin-log max_allowed_packet = 64m default_storage_engine = innodb innodb_strict_mode = 1 innodb_buffer_pool_size = 5g innodb_stats_on_metadata = 0 innodb_file_format = barracuda innodb_flush_method = o_direct innodb_log_files_in_group = 2 innodb_log_file_size = 4g innodb_log_buffer_size = 128m innodb_file_per_table = 1 innodb_max_dirty_pages_pct = 60 innodb_io_capacity = 4000 lower_case_table_names = 1 #add innodb innodb_buffer_pool_instances = 16 innodb_flush_log_at_trx_commit = 1 innodb_adaptive_flushing = 1 innodb_thread_concurrency = 0 innodb_stats_persistent = 1 innodb_purge_threads = 4 innodb_use_native_aio = 1 ##innodb_use_sys_malloc = 1 innodb_autoinc_lock_mode = 2 innodb_change_buffering = inserts innodb_read_io_threads = 16 innodb_write_io_threads = 16 expire_logs_days = 30 # caches and limits # key_buffer_size = 32m tmp_table_size = 256m max_heap_table_size = 256m table_open_cache = 4096 query_cache_type = 0 query_cache_size = 0 max_connections = 2000 thread_cache_size = 1024 open_files_limit = 65535 #add others metadata_locks_hash_instances = 256 table_open_cache_instances = 16 back_log = 1500 wait_timeout = 3600 interactive_timeout = 3600 master_info_repository=table relay_log_info_repository=table log_slave_updates=on binlog_checksum=none binlog_format=row transaction_isolation=read-committed sql_mode='strict_trans_tables,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution'
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读
-
centos7.2离线安装mysql5.7.18.tar.gz
-
Visual Studio 2017 (VS 2017)离线安装包制作方法
-
详解Centos7.2编译安装zabbix3.2(详细步骤)
-
Centos7.2 编译安装PHP7.0.2的步骤
-
Visual Studio 2017正式版离线安装教程
-
Visual Studio 2017 离线安装教程
-
Navicat Premium v12.0破解版怎么安装?Navicat Premium手动破解离线激活图文教程
-
Python离线安装PIL 模块的方法
-
解析离线安装Eclipse的Android ADT开发插件的具体操作(图文)
-
CentOS7.2安装Nginx的方法步骤