mysql修改密码报错是
yum 安装mysql5.7 是 出现无法登陆问题以及mysql error You must reset your password using ALTER USER statement befor
原创 2017年01月06日 11:55:54

标签:
mysql /
mysql5.7

yum 安装 mysql 5.7 见 http://blog.csdn.net/davi_2016/article/details/54096341

yum 安装 mysql 5.7 时登陆出现以下问题

最终解决方法

一 打开配置文件

vim /etc/my.cnf

二 添加下面这段话

skip-grant-tables

三重启mysql

service mysqld restart

四 登陆mysql

mysql -u root -p 回车进入

五 进入mysql 使用 命令报错 如下

1.SET PASSWORD = PASSWORD('your new password');

出现报错:

mysql> set password = PASSWORD('123456');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

这个其实与validate_password_policy的值有关。

执行下面命令 修改 即可

mysql> set global validate_password_policy =0;
Query OK, 0 rows affected (0.04 sec)

mysql> set global validate_password_length = 6;
Query OK, 0 rows affected (0.00 sec)

然后重新 执行命令
mysql>SET PASSWORD = PASSWORD('your new password');

Query OK, 0 rows affected (0.00 sec)
2.ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER
3.flush privileges;
4.quit
5.重新登陆 就OK了

=====================================================================================================================================

修改Master配置, Backup服务器的配置不变。
[java] view plain copy

vrrp_instance VI_1 {
state BACKUP
interface eno16777736
virtual_router_id 51
priority 100
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.80.120
}
notify_master /home/keepshell/notify_master.sh
notify_backup /home/keepshell/notify_backup.sh
notify_fault /home/keepshell/notify_fault.sh
notify_stop /home/keepshell/notify_stop.sh
}

==========================================================================================================================================
grant replication 出现以下错误的原因及修改方法ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES

在搭建mysql主主复制的时候,创建一个新的具有replicaion权限的新用户,刚开始的操作如下:
mysql> GRANT REPLICATION SLAVE ON test.* TO ‘server01’@’%’ IDENTIFIED BY ‘server01’;
会提示错误:ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES

错误的原因是因为,replication权限是一个全局权限,不可以指定在某一个库上,所以,把创建用户语句更改为如下即可:

mysql> GRANT REPLICATION SLAVE ON . TO ‘server01’@’192.168.40.129’ IDENTIFIED BY ‘568888’;
Query OK, 0 rows affected (0.00 sec)

ok,一切正常,但是,为了安全起见,在创建新的用户的时候,最好指定登陆地址,不然别人拿着你的账号就要干坏事儿了,虽然这个账号只具备replication权限,但是也是具有危险性的。所以,最后的语句更改为:

mysql> GRANT REPLICATION SLAVE ON . TO ‘server01’@’192.168.40.129’ IDENTIFIED BY ‘568888’;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

================================================================================================================================================
如果出像这种什么PID找不到啥的。多半是二进制日志美开启,pid那个文件不能生成导致的,把二进制文件开启在生成就哦可了
MySQL server PID file could not be found! [FAILED]
Starting MySQL.... [ OK ]

===============================================================================================================================================
Mysqldum备份数据库技巧:mysqldump --all-databases -p -u root > E:/all_databases.sql

===================================================================================================================================================
在元马便已出现下面这种状况的时候
configure: error:
!!! OpenSSL is not properly installed on your system. !!!
!!! Can not include OpenSSL headers files.

看提示缺少了OpenSSL,所以可以用yum来装上,要学会看错误
yum -y install openssl-devel

====================================================================================================================================================
wsrep配置详细步骤
下载时最好下载对应最新的安装包,我下载的是5.6版本的

使用 (yum install -y 包名)命令进行安装 ,安装MySQL时可能会安装失败,不用担心,依次安装所有的

包,如果还是安装失败,等其他安装包安装好以后,重新安装一遍

2、Mysql首次启动
使用service mysql start --skip-grant-tables 开启mysql服务
通过这个模式开启数据库后进入数据库修改密码;可以直接mysql进去而不用密码。

进去之后首先要更新密码:update mysql.user set password=password('shengyang') where user='root';
然后quit退出,service mysql start 重启服务,之后用root账户登陆mysql -u root -p

进入后set password=password('shengyang');设置root账户的登陆密码

其次给远程用户授权
(1)、指定某一网段用户:grant all privileges on *.* to shengyang@'192.168.0.%' identified by'shengyang';
(2)、授权无端口限制的登陆mysql数据库
grant all privileges on *.* to shengyang@'%' identified by'shengyang' with grant option;

3、关闭防火墙 setenforce 0 或者vim /etc/sysconfig/selinux

也可以设置mysql开机自启动:chkconfig mysql on

4、Mysql配额之文件设置
拷贝 cp /usr/share/doc/mysql-wsrep-server/wsrep.cnf /etc/my.cnf.d/
编辑/etc/my.cnf
在最后那厄里增加一行
!includedir /etc/my.cnf.d/

5、修改wsrep.cnf
a、Mysql服务器的ID,必须是唯一的
Server-id=101

b、galera集群的名字,必须是统一的
wsrep_cluster_name='shengyang'

c、wsrep提供着,必须配置
wsrep-provider=/usr/lib64/galera-3/libgalera_smm.so (.so文件的路径在哪,就配置成哪)

d、wsrep节点的ID,必须是唯一的
wsrep_node_name = node1

e、集群中的其他节点地址,可以使用主机名或IP

wsrep_cluster_address=gcomm://192.168.168.232:4567,192.168.168.72:4567,

f、本机节点地址,可以使用主机名或IP

wsrep_node_address='192.168.168.102:4567'

g、指定wsrep启动端口号

wsrep_node_incoming_address='192.168.168.102:4567'

f、一个逗号分割的节点串作为状态转移源,比如wsrep_sst_donor=node5,node3,如果node5可用,用node5,不可

g、用node3,如果node3不可用,最后的逗号表明让提供商自己选择一个最优的。

wsrep_sst_donor='node1,node2,node3,'

h、线程数量。参考设置:1.CPU内核数*2以上;2.其它写节点连接总数的1/4.

wsrep_slave_threads=16

i、xtrabackup使用的用户名密码(最好能和mysql数据库的用户名密码一致)

wsrep_sst_auth=root:123456

其余配置暂不用修改,有需要配置的,最好了解清楚以后修改.

5.mysql 集群启动

0节点启动方式一定是空地址启动,不用指向其他节点:

Service mysql start --wsrep-cluster-address=”gcomm://”

其余节点直接修改好配置使用service mysql start启动就可以了

其余节点配置方式主要是修改wsrep_cluster_address=”gcomm://192.168.168.112 ”

配置方式遵循,1节点指向0节点地址,2节点指向1节点地址,依次类推.

如果节点断开,启动之前先执行:mysqld_safe --wsrep-recover

会出现"Revovered position …… :38719(比较这个数字,选择最大值的 那个数据库服务器作为0节点启动,个人觉得应该就是数据库最多的那个作为0节点启动)"

6.相关注意事项:

galera集群是主主集群配置,数据会同时写入

建议集群最少配置3个节点,也就是3台服务器,避免出现"脑裂",断开其中一个,剩下两台还可以继续使用

严禁在集群断开的时候,在单台数据库上进行添加数据的操作,后期想重新连接起来会比较麻烦

集群配置好了以后使用命令: mysql> show status like ''wsrep%";

查看配置的情况:

wsrep_cluster_size 后面的值为多少就表示目前集群有多少个节点.

Mysql一些记忆的更多相关文章

  1. Mysql 细节记忆

    DELIMITER $$ 和 DELIMITER ; DROP PROCEDURE IF EXISTS `pro_follow_getBookBeforeExpired`$$ DECLARE p_Se ...

  2. MySQL数据分析-(1) 数据库前言

    (一)开场白 大家好,欢迎大家跟我一起学习<MySQL数据分析实战>这门课程,对于数据分析师来说,数据库是每一个从业者都必须掌握的课程,我们这门课是从实战的角度出发,我会帮助大家梳理MyS ...

  3. mysql 5.7中的用户权限分配相关解读!

    这篇文章主要介绍了MySQL中基本的用户和权限管理方法,包括各个权限所能操作的事务以及操作权限的一些常用命令语句,是MySQL入门学习中的基础知识,需要的朋友可以参考下 一.简介 各大帖子及文章都会讲 ...

  4. 我的MYSQL学习心得(六) 函数

    我的MYSQL学习心得(六) 函数 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

  5. 我的MYSQL学习心得(七) 查询

    我的MYSQL学习心得(七) 查询 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

  6. PHP中的数据库一、MySQL优化策略综述

    前些天看到一篇文章说到PHP的瓶颈很多情况下不在PHP自身,而在于数据库.我们都知道,PHP开发中,数据的增删改查是核心.为了提升PHP的运行效率,程序员不光需要写出逻辑清晰,效率很高的代码,还要能对 ...

  7. mysql函数大全

    对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NULL. mysql& ...

  8. Linux 操作mysql数据库 创建库 导入、删除表

    确保线上的运行数据库是不可避免的本人小白,因公司上线没有办法自己去整服务器,深刻体会到服务器大神的霸气,所以为了增加记忆,服务广大员友记录一下 linux mysql 忘记root的密码无法登陆进my ...

  9. 6_PHP AJAX MYSQL

    XAMPP套装软件: 包含Apache.MySQL.PHP等多个开源软件的集合. https://www.apachefriends.org/zh_cn/index.html 监听完整相应消息: Wi ...

随机推荐

  1. 轻松理解execl系列函数

    execl函数功能如下:启动一个可执行文件,并且对他进行传送参数.一些原型如下 #include <unistd.h> extern char **environ; int execl(c ...

  2. php curl模拟登录(半转载)

    参考:http://our2848884.blog.163.com/blog/static/146854834201282039334/   php curl模拟登录 参考:http://blog.c ...

  3. War包反编译过程

    War包反编译过程 很多人可以将项目编译为war发布,可是有时候得到war确看不到源码.今天分享下war反编译的过程: 1.首先下载一个小工具,在http://jd.benow.ca/官网下载jd-g ...

  4. bzoj1941 Hide and Seek

    Description 小猪iPig在PKU刚上完了无聊的猪性代数课,天资聪慧的iPig被这门对他来说无比简单的课弄得非常寂寞,为了消除寂寞感,他决定和他的好朋友giPi(鸡皮)玩一个更加寂寞的游戏- ...

  5. 1082 Read Number in Chinese (25 分)

    1082 Read Number in Chinese (25 分) Given an integer with no more than 9 digits, you are supposed to ...

  6. matplot 代码实例

    matplot 代码实例 #!/usr/bin/env python # coding=utf-8 import numpy as np import matplotlib.pyplot as plt ...

  7. ROS+L2TP+IPSEC

    在WIN7X64,WIN8.1,WIN10,MACBOOK和苹果的IOS10调试L2TP/IPSEC通过 请注意IPSEC,要求客户端IP必须唯一,不可以有重复,那么访问VPN服务器的客户端IP,就不 ...

  8. Koa 框架整理

    学习交流 Koa使用了ES6规范的generator和异步编程是一个更轻量级Web开发的框架,Koa 的先天优势在于 generator.由于是我个人的分享交流,所以Node基础.ES6标准.Web开 ...

  9. 长沙雅礼中学集训-------------------day3

    今天的收获还是蛮大的,终于体会了一波在知识的海洋中遨游的美滋滋的快感. T1:给你N个点的位置和他们的速度,这些点向一个方向移动,求前M次超越者的集合A和被超越者的集合B(集合为这些点的速度),以及从 ...

  10. 【Unix网络编程】chapter3 套接字编程简介

    chapter3套接字编程简介3.1 概述 地址转换函数在地址的文本表达和他们存放在套接字地址结构中的二进制值之间进行转换.多数现存的IPv4代码使用inet_addr和inet_ntoa这两个函数, ...