centos 6.7 mysql_CentOS6.7 64位环境下安装部署MySQL-5.7.13

系统环境:

[root@localhost ~]# cat /etc/RedHat-release

CentOS release 6.7 (Final)

[root@localhost tools]# uname -a

Linux localhost 2.6.32-573.22.1.el6.x86_64 #1 SMP Wed Mar 23 03:35:39 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

[root@localhost tools]#

软件准备:

[root@localhost tools]# pwd

/opt/tools

[root@localhost tools]# ll

total 674208

-rw-r--r-- 1 root root 639864682 Jul 22 17:47 mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz

-rw-r--r-- 1 root root  50516207 May 25 12:01 mysql-5.7.13.tar.gz

[root@localhost tools]#

解压安装:

[root@localhost tools]# tar xf mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz

[root@localhost tools]# ll

total 674212

drwxr-xr-x 9 7161 wheel      4096 May 25 15:04 mysql-5.7.13-linux-glibc2.5-x86_64

-rw-r--r-- 1 root root  639864682 Jul 22 17:47 mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz

-rw-r--r-- 1 root root  50516207 May 25 12:01 mysql-5.7.13.tar.gz

[root@localhost tools]#

[root@localhost tools]# mv mysql-5.7.13-linux-glibc2.5-x86_64 /usr/local/mysql

[root@localhost tools]#

初始化操作(生成初始密码):

[root@localhost mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data

2016-07-22T09:58:15.001776Z 0 [Warning] InnoDB: New log files created, LSN=45790

2016-07-22T09:58:15.062066Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.

2016-07-22T09:58:15.073009Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: cebfb8a6-4ff2-11e6-8c8d-005056a01a07.

2016-07-22T09:58:15.074370Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.

2016-07-22T09:58:15.075736Z 1 [Note] A temporary password is generated for root@localhost: k_1ljzVh3

[root@localhost mysql]#

PS: mysql5.7新特性:由上面可以看出, mysql_install_db 已经不再推荐使用了,建议改成 mysqld --initialize 完成实例初始化。

加入MySQL为系统服务:

[root@localhost mysql]# cp support-files/mysql.server  /etc/init.d/mysqld

[root@localhost mysql]# chkconfig mysqld on

[root@localhost mysql]# chkconfig --list|grep mysqld

mysqld          0:off  1:off  2:on    3:on    4:on    5:on    6:off

[root@localhost mysql]#chmod 755 /etc/init.d/mysqld

MySQL服务启动、重启、停止

[root@localhost mysql]# serivce mysqld start

[root@localhost mysql]# serivce mysqld stop

[root@localhost mysql]# serivce mysqld restart

[root@localhost mysql]#

设置环境变量:

[root@localhost mysql]# vim /etc/profile

export PATH=/usr/local/mysql/bin:$PATH

[root@localhost mysql]#

检查MySQL是否能开启

[root@localhost mysql]# cd /usr/local/mysql

[root@localhost mysql]# cd support-files/

[root@localhost support-files]# ./mysql.server start

Starting MySQL.. SUCCESS!

若改用了, 则在启动服务时会出现如下错误:

# ./support-files/mysql.server start

./support-files/mysql.server: line 276: cd: /usr/local/mysql: No such file or directory

Starting MySQL ERROR! Couldn't find MySQL server (/usr/local/mysql/bin/mysqld_safe)

这时候我们需要修改/support-files/mysql.server文件的basedir和datadir目录路径为我们正确的mysql的basedir和datadir路径, 如下:

# vim support-files/mysql.server

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

...

basedir=/usr/local/mysql

datadir=/data/mysql/data

...

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

# ./support-files/mysql.server start

Starting MySQL.. SUCCESS!

创建配置文件

将默认生成的my.cnf备份

# mv /etc/my.cnf /etc/my.cnf.bak

[root@localhost support-files]# cp my-default.cnf  /etc/my.cnf

初始化mysql用户root的密码

先将mysql服务停止

# service mysqld stop

进入mysql安装目录, 执行:

# cd /usr/local/mysql

# ./bin/mysqld_safe --skip-grant-tables --skip-networking&

[1] 6225

[root@localhost mysql]# 151110 02:46:08 mysqld_safe Logging to '/data/mysql/data/localhost.localdomain.err'.

151110 02:46:08 mysqld_safe Starting mysqld daemon with databases from /data/mysql/data

另外打开一个终端(p.s. 如果是ssh连接登录的, 另外创建一个ssh连接即可), 执行操作如下:

# mysql -u root mysql

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

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

Your MySQL connection id is 2

Server version: 5.7.13 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, 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> use mysql;

Database changed

mysql> UPDATE user SET password=PASSWORD('123456') WHERE user='root';

ERROR 1054 (42S22): Unknown column 'password' in 'field list'

mysql> update user set authentication_string = PASSWORD('123456') where user = 'root';

Query OK, 1 row affected, 1 warning (0.02 sec)

Rows matched: 1  Changed: 1  Warnings: 1

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

mysql> \s

mysql  Ver 14.14 Distrib 5.7.13, for linux-glibc2.5 (x86_64) using  EditLine wrapper

Connection id:          62

Current database:

Current user:          root@localhost

SSL:                    Not in use

Current pager:          stdout

Using outfile:          ''

Using delimiter:        ;

Server version:        5.7.13-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:            /data/AEData/mysql/data/mysql.sock

Uptime:                46 min 54 sec

Threads: 6  Questions: 6846  Slow queries: 0  Opens: 257  Flush tables: 1  Open tables: 201  Queries per second avg: 2.432

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

mysql>

到此, 设置完mysql用户root的密码且确保mysql编码集是utf8, 注意上面, 新版本的mysql.user表里的密码字段是authentication_string

MySQL远程授权

格式如下:

mysql> grant all [privileges] on db_name.table_name to 'username'@'host' identified by 'password';

示例如下:

mysql> grant all privileges on *.* to 'root'@'%' identified by '123456';

Query OK, 0 rows affected, 1 warning (0.04 sec)

mysql> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

mysql>

或用

mysql> grant all on *.* to 'root'@'%' identified by '123456';

到此, 完成了mysql的安装 及配置!!!

附上配置文件:

[client]

loose_default-character-set = utf8

[mysqld]

basedir = /usr/local/mysql

datadir = /data/mysql/data

port = 3306

server_id = 1

socket = /data/mysql/data/mysql.sock

expire_logs_days      = 7

innodb_file_per_table

innodb_buffer_pool_size        = 2G

innodb_thread_concurrency      = 24

innodb_flush_log_at_trx_commit  = 1

innodb_log_buffer_size          = 32M

innodb_log_file_size            = 256M

innodb_log_files_in_group      = 3

innodb_max_dirty_pages_pct      = 90

innodb_lock_wait_timeout        = 120

wait_timeout            = 60

interactive_timeout    = 7200

skip-name-resolve

character-set-server    = utf8

back_log                = 50

max_connections        = 3000

max_connect_errors      = 32

max_allowed_packet      = 32M

binlog_cache_size      = 8M

max_heap_table_size    = 512M

tmp_table_size          = 64M

key_buffer_size        = 16M

read_buffer_size        = 2M

read_rnd_buffer_size    = 8M

bulk_insert_buffer_size = 64M

sort_buffer_size        = 4M

join_buffer_size        = 2M

thread_cache_size      = 64

thread_stack            = 192K

query_cache_type        = 1

query_cache_size        = 256M

query_cache_limit      = 2M

ft_min_word_len        = 2

default_storage_engine  = INNODB

#default_table_type    = INNODB

transaction_isolation  = REPEATABLE-READ

lower_case_table_names  = 1

#log_slow_queries

slow_query_log

long_query_time = 2

log-short-format

myisam_sort_buffer_size        = 128M

myisam_max_sort_file_size      = 10G

myisam_repair_threads          = 1

[mysqldump]

quick

max_allowed_packet = 32M

routines

single-transaction

hex-blob

skip-comments

complete-insert

skip-disable-keys

skip-add-locks

skip-lock-tables

[isamchk]

key_buffer      = 512M

sort_buffer_size = 512M

read_buffer      = 8M

write_buffer    = 8M

[myisamchk]

key_buffer      = 512M

sort_buffer_size = 512M

read_buffer      = 8M

write_buffer    = 8M

[mysqlhotcopy]

interactive-timeout

# Remove leading # to set options mainly useful for reporting servers.

# The server defaults are faster for transactions and fast SELECTs.

# Adjust sizes as needed, experiment to find the optimal values.

# join_buffer_size = 128M

# sort_buffer_size = 2M

# read_rnd_buffer_size = 2M

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

0b1331709591d260c1c78e86d0c51c18.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值