MySQL 5.7.21 Linux平台安装 Part 2

1. 目录规划 2. MySQL 5.7 下载 3. 新建用户及目录 4. 新建目录 5. 配置环境变量 6. 建立配置文件 7. 依赖包检查 8. 卸载以前版本 9. 解压文件 9.1  解压安装文件 9.2 配置服务文件 10. 初始化数据库 11. 启动数据库 12. 连接数据库

从今天开始MySQL相关方面的东西

今天是关于MySQL的安装

系统为 redhat 6.10

数据库为MySQL 5.7.21

PS:目前最新版本为MySQL 5.7.25

1. 目录规划

目录名称 参数名称 路径地址
安装目录 basedir /usr/local/mysql
数据文件目录 datadir /data/mysql/data
临时文件目录 tmpdir /data/mysql/tmp
socket文件目录 socket /data/mysql/data/mysql.sock
bin日志文件目录 log_bin /datalog/mysql/binlog
relay日志文件目录 relay_log /datalog/mysql/relaylog

2. MySQL 5.7 下载

目前MySQL 社区的GA 提供5 和8 的下载

由于目前大多数系统用的还是5的版本

这里统一使用5的版本

注意,下面是按照5.7.21的版本安装,5.25相同

MySQL Community Server 5.7.25

3.png

3. 新建用户及目录

/usr/sbin/groupadd -g 105 mysql

/usr/sbin/useradd -u 105 -g mysql mysql

echo "mysql123" |passwd mysql --stdin

4. 新建目录


mkdir -p /data/mysql/software
mkdir -p /usr/local/mysql
mkdir -p /data/mysql/data
mkdir -p /datalog/mysql/binlog
mkdir -p /datalog/mysql/relaylog
chown -R mysql:mysql /usr/local/mysql
mkdir -p /data/mysql/tmp
chown -R mysql:mysql /data/mysql
chown -R mysql:mysql /datalog/mysql/



5. 配置环境变量


su - mysql
vim ~/.bash_profile
export MYSQL_HOME=/usr/local/mysql
export PATH=$HOME/bin:$MYSQL_HOME/bin:$PATH
export LD_LIBRARY_PATH=$MYSQL_HOME/lib:$LD_LIBRARY_PATH
source ~/.bash_profile



6. 建立配置文件

我们这里建立 /etc/my.cnf


[mysql]
user =
password =
[mysqld]
#-----------------MySQL Basic Setting-----------------#
server-id = 1723161113
port = 3306
user = mysql
pid-file = mysql.pid
character_set_server = utf8mb4
default_storage_engine = InnoDB
skip_name_resolve = 1
lower_case_table_names = 1
explicit_defaults_for_timestamp = 1
open_files_limit = 65535
max_connections = 1000
max_connect_errors = 100000
basedir = /usr/local/mysql
datadir = /data/mysql/data
tmpdir = /data/mysql/tmp
socket = /data/mysql/data/mysql.sock
query_cache_type = 
query_cache_size = 
join_buffer_size = 64M
tmp_table_size = 64M
max_allowed_packet = 32M
read_buffer_size = 16M
read_rnd_buffer_size = 32M
sort_buffer_size = 32M
#-----------------MySQL Log Setting-----------------#
log_error = mysql-error.log
log_bin = /datalog/mysql/binlog/mysql-bin.log
slow_query_log_file = mysql-slow.log
relay_log = /datalog/mysql/relaylog/mysql-relay.log
log_slave_updates = 1
sync_binlog = 1
relay_log_recovery = 1
binlog_format = row
expire_logs_days = 14
slow_query_log = 1
long_query_time = 2
log_queries_not_using_indexes = 1
log_throttle_queries_not_using_indexes = 10
log_slow_admin_statements = 1
log_slow_slave_statements = 1
min_examined_row_limit = 1000
#-----------------MySQL Replication Setting-----------------#
slave_skip_errors = ddl_exist_errors
master_info_repository = TABLE
relay_log_info_repository = TABLE
gtid_mode = on
enforce_gtid_consistency = 1
binlog_rows_query_log_events = 1
#-----------------MySQL InnoDB Setting-----------------#
innodb_page_size = 16384
innodb_buffer_pool_size = 25600M
innodb_data_file_path = ibdata1:1G:autoextend
innodb_buffer_pool_instances = 8
innodb_file_per_table = 1
innodb_buffer_pool_load_at_startup = 1
innodb_buffer_pool_dump_at_shutdown = 1
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 5
innodb_io_capacity = 800
innodb_io_capacity_max = 2000
innodb_flush_method = O_DIRECT
innodb_file_format = Barracuda
innodb_file_format_max = Barracuda
innodb_undo_logs = 128
innodb_undo_tablespaces = 3
innodb_flush_neighbors = 1
innodb_log_file_size = 2G
innodb_log_buffer_size = 16777216
innodb_print_all_deadlocks = 1
innodb_strict_mode = 1
innodb_sort_buffer_size = 67108864
#-----------------MySQL semi Replication Setting-----------------#
#plugin_dir = /usr/local/mysql/lib/plugin
#plugin_load = "rpl_semi_sync_master=semisync_master.so;rpl_semi_sync_slave=semisync_slave.so"
#loose_rpl_semi_sync_master_enabled = 1
#loose_rpl_semi_sync_slave_enabled = 1
#loose_rpl_semi_sync_master_timeout = 5000

修改my.cnf权限

chown mysql:mysql /etc/my.cnf

7. 依赖包检查


libaio-0.3.107-10.el6.x86_64
libaio-devel-0.3.107-10.el6.x86_64
lvm2-2.02.143-7.el6_8.1.x86_64



8. 卸载以前版本

如果有以前版本的MySQL ,则需要先下载

如只有lib库则可以不用动

RedHat Enterprise Linux 6适用】


# rpm -qa|grep -i mysql
mysql-libs-5.1.71-1.el6.x86_64
qt-mysql-4.6.2-26.el6_4.x86_64
mysql-5.1.71-1.el6.x86_64
mysql-server-5.1.71-1.el6.x86_64
#yum remove mysql-5.1.71-1.el6.x86_64 qt-mysql-4.6.2-26.el6_4.x86_64 mysql-libs-5.1.71-1.el6.x86_64 mysql-server-5.1.71-1.el6.x86_64

【RedHat Enterprise Linux 7适用】


# rpm -qa|grep -i mariadb*
mariadb-server-5.5.52-1.el7.x86_64
mariadb-libs-5.5.52-1.el7.x86_64
mariadb-embedded-5.5.52-1.el7.x86_64
mariadb-test-5.5.52-1.el7.x86_64
mariadb-bench-5.5.52-1.el7.x86_64
mariadb-5.5.52-1.el7.x86_64
mariadb-devel-5.5.52-1.el7.x86_64
mariadb-embedded-devel-5.5.52-1.el7.x86_64
# yum remove -y mariadb*

9. 解压文件

9.1  解压安装文件


su - mysql
tar xzvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz  -C /usr/local/mysql/ --strip-components=1



9.2 配置服务文件

这里将mysql.server文件拷贝值init.d目录使其可以当作服务启停


cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

这里修改下面几处


vim /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/data/mysql/data
lockdir='/data/mysql/data'
mysqld_pid_file_path=/data/mysql/data/mysql.pid

10. 初始化数据库

接下来我们初始化MySQL


# su - mysql
$cd /usr/local/mysql
$/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql

初始化过程中可以通过error文件查看进度

tail -f /data/mysql/data/mysql-error.log

11. 启动数据库


$ /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
$ netstat -lntp|grep mysqld



后续可以使用如下命令启停数据库

service mysqld stop

service mysqld start

service mysqld restart

设置MySQL自启动

chkconfig mysqld on

12. 连接数据库

默认密码在error文件中有

cat /data/mysql/data/mysql-error.log |grep password

使用如下命令连接

mysql -S /data/mysql/data/mysql.sock -uroot -ppassword

连接后的安全性设置参见MySQL常见命令

MySQL 5.7 常用命令

好了 MySQL的 Linux  安装就先讲到这里

后续内容尽情期待


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28413242/viewspace-2650270/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28413242/viewspace-2650270/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值