文档章节

Centos 7 可安装 mysql5.7

n
 nibilly
发布于 2016/06/10 11:14
字数 1087
阅读 59
收藏 0

卸载mysql
yum remove mysql

 

使用yum安装MySQL(CentOS 6.2):

 第一次先安装repository

http://dev.mysql.com/doc/refman/5.6/en/linux-installation-yum-repo.html#yum-repo-setup

 

mkdir /home/tools

mkdir /home/tools/mysql

cd /home/tools/mysql

wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

//wget http://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm

sudo yum localinstall mysql57-community-release-el7-11.noarch.rpm

sudo yum install mysql-community-server

4、启动

    4.1、启动服务:

    service mysqld start 

    4.2、开机启动

    chkconfig --levels 235 mysqld on

    

5、配置

 

在/etc/my.cnf中添加 

validate-password=OFF

不然简单密码将不能被mysql接受

    5.1、MySQL安全安装

    执行下面的命令:

    /usr/bin/mysql_secure_installation

    涉及内容包括:

    设置或更改root密码 ( 初次安装,初始密码:grep 'temporary password' /var/log/mysqld.log)

    移除匿名用户

    禁止远程登录root

    删除测试数据库test

    重新加载授权表

    

******** 完成上面的步骤,即成功完成安装

 

常见异常

 

Mysql:is not allowed to connect to this MySQL server

如果你想连接你的mysql的时候发生这个错误:
ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server

解决方法:
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

mysql -u root -pvmware

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

//刷新系统权限表
mysql>flush privileges;

mysql>select host, user from user;

2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123ABCabc' WITH GRANT OPTION;

 

 

 

 重置密码方法

 

 可尝试这样启动  mysqld_safe -skip-grant-tables

 

或者

在/etc/my.ini的[mysqld]字段加入:
skip-grant-tables
重启mysql服务,这时的mysql不需要密码即可登录数据库
然后进入mysql
mysql>use mysql;
mysql>update user set password=password('新密码') WHERE User='root';
mysql>flush privileges;
运行之后最后去掉my.ini中的skip-grant-tables,重启mysqld即可。
5.7 中用:update user set authentication_string=password('123ABCabc') WHERE User='root';
ALTER USER USER() IDENTIFIED BY password('123ABCabc');
 
 

You must reset your password using ALTER USER statement before executing this statement

通过"skip-grant-tables"配置,客户端连接 ,修改 user 表的字段 password_expired 为  'N';

 

 

6、自定义MySQL数据文件目录

    有时需要自定义MySQL的数据文件夹,即datadir;

    6.1、建立目标目录,这里假定为 /home/data/mysql;    

 

service mysqld stop

mkdir /home/data

mv /var/lib/mysql /home/data/

mkdir /home/data/mysql/log/

touch mysqld.log

    

 

    6.2、授权目录读写权限给MySQL的运行用户,上面安装后的MySQL会以用户mysql运行,则授权语句如下: 

chown -R mysql:mysql /home/data/mysql

    6.3、修改/etc/my.cnf文件,[mysqld]增加datadir、socket配置,[client]也需要增加socket配置

            [mysqld]

            datadir=/home/data/mysql

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

            [client]

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

 

mysql 5.7配置 示例

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# 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
port=3307
server_id=1
character-set-server=utf8mb4
datadir=/home/data/mysql
socket=/home/data/mysql/mysql.sock
validate-password=OFF
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/home/data/mysql/log/mysqld.log
pid-file=/home/data/mysql/mysqld.pid
 
[client]
socket=/home/data/mysql/mysql.sock

 

 

 

            

    6.4、如果启动失败,可通过cat /var/log/mysqld.log 查看启动日志,如果出现如下错误,则是由于SELINUX限制引起

        InnoDB: Operating system error number 13 in a file operation.

        InnoDB: The error means mysqld does not have the access rights to

        InnoDB: the directory.

        解决方法: chcon -Rt mysqld_db_t /home/data/mysql

7、

一、Warning: World-writable config file '/etc/my.cnf' is ignored

To fix this problem, use the following command to change file’s permissions

要修改该问题,使用以下命令更改该文件的权限。

 

chmod 644 /etc/my.cnf

 4、找到my.cnf配置文件 
   如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下: 
   [root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 

 

 

 

© 著作权归作者所有

共有 人打赏支持
n
粉丝 13
博文 179
码字总数 41779
作品 0
厦门
mysql5.7在centos上安装的完整教程以及相关的“坑”

安装前的准备 Step1: 如果你系统已经有mysql,如一般centos自带mysql5.1系列,那么你需要删除它,先检查一下系统是否自带mysql yum list installed | grep mysql Step2: 删除系统自带的mysql...

lifetragedy
2016/11/25
0
0
mysql5.7+keepalived1.3.5搭建热备服务器

1.规划 2.安装准备 mysql主从或者mysql双主,自行搭建这里不再赘述。 注:mysql与keepalived最好在同一台主机。mysql主从开启远程用户 3.keepalived安装 yum -y install keepalived 4.master...

zhuxtqw
05/13
0
0
MySQL(root用户)密码重置&安装配置

参考: MySQL(root用户)密码重置 MySQL5.7官方开发手册 MySQL 5.7 新特性详解 Centos 安装mysql5.7 CentOS7 安装Mysql5.7(解压缩版) CentOS6.5安装与配置Mysql数据库 http://mysqlserverteam...

IamOkay
2016/04/02
83
0
mysql5.7:mysql安装和基于SSL加密的主从复制(详细剖析)

小生博客:http://xsboke.blog.51cto.com 小生 Q Q:1770058260 -------谢谢您的参考,如有疑问,欢迎交流 目录: --------mysql-5.7.13简介及安装 --------配置mysql-5.7.13的ssl加密传输 ...

小生博客
2017/05/07
0
0
centos7 mysql5.7(5.7.17-linux-glibc2.5)源码安装

####centos7 mysql5.7源码安装之二(5.7.17-linux-glibc2.5)####### 1、准备工作(创建mysql用户及其mysql用户组 生产用户目录 及其设置该账号不能登录) ,解决依赖包 [root@localhost ~]#yum -...

yikayi
2017/02/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何通过 J2Cache 实现分布式 session 存储

做 Java Web 开发的人多数都会需要使用到 session (会话),我们使用 session 来保存一些需要在两个不同的请求之间共享数据。一般 Java 的 Web 容器像 Tomcat、Resin、Jetty 等等,它们会在...

红薯
41分钟前
1
0
C++ std::thread

C++11提供了std::thread类来表示一个多线程对象。 1,首先介绍一下std::this_thread命名空间: (1)std::this_thread::get_id():返回当前线程id (2)std::this_thread::yield():用户接口...

yepanl
今天
2
0
Nignx缓存文件与动态文件自动均衡的配置

下面这段nginx的配置脚本的作用是,自动判断是否存在缓存文件,如果有优先输出缓存文件,不经过php,如果没有,则回到php去处理,同时生成缓存文件。 PHP框架是ThinkPHP,最后一个rewrite有关...

swingcoder
今天
1
0
20180920 usermod命令与用户密码管理

命令 usermod usermod 命令的选项和 useradd 差不多。 一个用户可以属于多个组,但是gid只有一个;除了gid,其他的组(groups)叫做扩展组。 usermod -u 1010 username # 更改用户idusermod ...

野雪球
今天
1
0
Java网络编程基础

1. 简单了解网络通信协议TCP/IP网络模型相关名词 应用层(HTTP,FTP,DNS等) 传输层(TCP,UDP) 网络层(IP,ICMP等) 链路层(驱动程序,接口等) 链路层:用于定义物理传输通道,通常是对...

江左煤郎
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部