Comparación de la versión Mysql 5.X de Mysql 5.7 cambiar la contraseña de root

Funciones de Mysql 5.7, en comparación con las versiones 5.5 y 5.6

la seguridad

用户表 mysql.user 的 plugin字段不允许为空, 默认值是 mysql_native_password,而不是 mysql_old_password,不再支持旧密码格式;

增加密码过期机制,过期后需要修改密码,否则可能会被禁用,或者进入沙箱模式;

提供了更为简单SSL安全访问配置,并且默认连接就采用SSL的加密方式。

flexibilidad

MySQL数据库从5.7.8版本开始,也提供了对JSON的支持。

可以混合存储结构化数据和非结构化数据,同时拥有关系型数据库和非关系型数据库的优点

能够提供完整的事务支持
generated column是MySQL 5.7引入的新特性,所谓generated column,就是数据库中这一列由其他列计算而得

Facilidad de uso

在MySQL 5.7 之前,如果用户输入了错误的SQL语句,按下 ctrl+c ,虽然能够”结束”SQL语句的运行,但是,也会退出当前会话,MySQL 5.7对这一违反直觉的地方进行了改进,不再退出会话。

MySQL 5.7可以explain一个正在运行的SQL,这对于DBA分析运行时间较长的语句将会非常有用。

sys schema是MySQL 5.7.7中引入的一个系统库,包含了一系列视图、函数和存储过程, 该项目专注于MySQL的易用性。

Por ejemplo: cómo ver índices redundantes en la base de datos; cómo obtener índices no utilizados; cómo ver sentencias SQL que usan una exploración de tabla completa.

Disponibilidad

在线设置 复制的过滤规则 不再需要重启MySQL,只需要停止SQLthread,修改完成以后,启动SQLthread。

在线修改buffer pool的大小。

Online DDL MySQL 5.7支持重命名索引和修改varchar的大小,这两项操作在之前的版本中,都需要重建索引或表。

在线开启GTID ,在之前的版本中,由于不支持在线开启GTID,用户如果希望将低版本的数据库升级到支持GTID的数据库版本,需要先关闭数据库,再以GTID模式启动,所以导致升级起来特别麻烦。

actuación

临时表的性能改进。

临时表只在当前会话中可见

临时表的生命周期是当前连接(MySQL宕机或重启,则当前连接结束)

只读事务性能改进。

MySQL 5.7通过 避免为只读事务分配事务ID ,不为只读事务分配回滚段,减少锁竞争等多种方式,优化了只读事务的开销,提高了数据库的整体性能。

加速连接处理。

在MySQL 5.7之前,变量的初始化操作(THD、VIO)都是在连接接收线程里面完成的,现在将这些工作下发给工作线程,以减少连接接收线程的工作量,提高连接的处理速度。这个优化对那些频繁建立短连接的应用,将会非常有用。

复制性能的改进 (支持多线程复制(Multi-Threaded Slaves, 简称MTS)

MySQL的默认配置是库级别的并行复制,为了充分发挥MySQL 5.7的并行复制的功能,我们需要将slave-parallel-type配置成LOGICAL_CLOCK。

默认启用 STRICT_TRANS_TABLES 模式。

El soporte de funciones más complejas se implementa para el modo ONLY_FULL_GROUP_BY, y también está habilitado de forma predeterminada.

Otro modo SQL habilitado por defecto es NO_ENGINE_SUBSTITUTION.

Cambio de parámetros predeterminados

El formato binlog predeterminado se ajusta al formato ROW

La operación después del error binlog predeterminado se ajusta a ABORT_SERVER

Bajo la opción anterior (binlog_error_action = IGNORE_ERROR), si ocurre un error y el binlog no se puede escribir, mysql-server registrará el error en el registro de errores y forzará el cierre de la función binlog. Esto hará que mysql-server continúe ejecutándose en el modo de no grabar binlog, haciendo que la base de datos esclava no pueda continuar obteniendo el binlog de la base de datos maestra.

La seguridad de Binlog cuando mysql falla está habilitada de forma predeterminada.

El slave_net_timeout se reduce de forma predeterminada.

La instalación es diferente

mysql_install_db已经不再推荐使用了,建议改成mysqld --initialize 完成实例初始化。如果 datadir 指向的目标目录下已经有数据文件,则会有[ERROR] Aborting;

在初始化时如果加上 --initial-insecure,则会创建空密码的 root@localhost 账号,否则会创建带密码的 root@localhost 账号,密码直接写在 log-error 日志文件中;新用户登入后需要立刻修改密码,否则无法继续后续的工作。

Mysql 5.7 cambiar la contraseña de root

/etc/init.d/mysqld stop

vim /etc/my.cnf    添加:  skip-grant-tables

/etc/init.d/mysqld start 
mysql -u root -p          #直接回车,空密码

use mysql;
update mysql.user set authentication_string=password('!@#www.666.com') where user='root';

alter user 'root'@'%' identified by '!@#www.666.com';

grant all privileges on *.* to 'root'@'%' identified by '!@#www.666.com';
flush privileges;     #刷新数据库

将 /etc/my.cnf 刚添加的skip-grant-tables注释掉,然后重启数据库:
/etc/init.d/mysql restart

登录数据库: mysql -u root -p'!@#www.666.com'

Script de instalación de shell de Mysql 5.7

# / bin / bash
echo "Mysql 5.7.26 Shell script, hice mi xiao.hai"

useradd -M -s / sbin / nologin mysql
yum -y install make gcc-c ++ cmake bison-devel ncurses-devel libaio libaio-devel perl-Data-Dumper gcc gcc-c ++ net-tools

mkdir -p / usr / local / mysql
mkdir -p / usr / local / mysql / data
mkdir -p / usr / local / mysql / log
mkdir -p / usr / local / mysql / data / bin-log
chown -R mysql : mysql / usr / local / mysql

mkdir -p / usr / local / boost && cd / usr / local / boost
wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
tar -xvzf boost_1_59_0. tar.gz

cd software
tar zxf mysql-5.7.26.tar.gz
cd mysql-5.7.26

cmake \
-DCMAKE_INSTALL_PREFIX = / usr / local / mysql \
-DMYSQL_DATADIR = / usr / local / mysql / data \
-DSYSCONFDIR = / etc \
-DWITH_MYISAM_STORAGE_ENGINE = 1 \
-DWITH_INNN_DOBASE_STORAGE = 1 \
-DWITH_INNN_DOBASE_STORMA = 1 \
-DWITH_INNN_DOBASE_STORAL = 1
-DMYSQL_UNIX_ADDR = / usr / local / mysql / mysql.sock \
-DMYSQL_TCP_PORT = 3306 \
-DENABLED_LOCAL_INFILE = 1 \
-DWITH_BOOST = / usr / local / boost \
-DWITH_PARTITION_STORAGE_ENCHDETSEF = 1
\
-DENABLED_LOCAL_INFILE = 1 \
- DDEFAULT_COLLATION = utf8_general_ci

hacer && hacer instalar

ln -s / usr / local / mysql / bin / * / usr / bin /
cat >> /etc/my.cnf << EOF
[cliente]
puerto = 3306
socket = / usr / local / mysql / mysql.sock
[mysqld ]
skip-name-resolve
explicit_defaults_for_timestamp = true
pid-file = / usr / local / mysql / data / Mysql.pid
port = 3306
socket = / usr / local / mysql / mysql.sock
connect_timeout = 60
wait_timeout = 2880
max_connections = 2048
max_allowed_packet = 64M
max_connect_errors = 1000
tmp_table_size = 512M
max_heap_table_size = 256M
query_cache_size = 128M
tmp_table_size = 256M
max_heap_table_size = 256M
join_buffer_size = 256k
read_buffer_size = 256k
read_rnd_size = 256k read_rnd_size
log_error = / usr / local / mysql / log / mysql-error.log
slow_query_log_file = / usr / local / mysql / log / mysql-slow.log
slow_query_log = 1
long_query_time = 2
expire_logs_days = 7
log-bin = / usr / local / mysql / data / bin-log
binlog_format = mixta
servidor-id = 1
innodb_data_home_dir = / usr / local / mysql / data /
innodb_file_per_table = 1
innodb_status_file = 1
innodb_buffer_pool_size = 4G
innodb_flush_method = O_DIRECT
innodb_flush_log_at_trx_commit = 2
innodb_support_xa = 0
innodb_log_file_size = 536870912
innodb_log_buffer_size = 128M
event_scheduler = 1
query_cache_type = 0
[mysqldump]
rápido
max_allowed_packet = 32M
[mysqlhotcopy]
tiempo de espera interactivo
EOF

/ usr / local / mysql / bin / mysqld --initialize --user = mysql --basedir = / usr / local / mysql --datadir = / usr / local / mysql / data

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chmod + x /etc/init.d/mysql
chkconfig --add mysql
chkconfig - nivel 35 mysql en

至此安装完成,有疑问可联系:  1050784459  

Supongo que te gusta

Origin blog.51cto.com/hason/2547302
Recomendado
Clasificación