mysql安装使用

摘要:
GTID,GTID主要解决binlog中事务ID的匹配问题。设置GTID后,高可用性设置和从备份中恢复数据将更容易。UTF8的问题:MySQL、C#和Java中的UTF8是两个概念。由于MySQL支持UTF8,UTF8标准还没有出台,因此MySQL的UTF8实现还不完整。MySQL中的UTF8最多只占用3个字节,而当前的标准UTF8最多可以占用4个字节。在MySQL中完全实现UTF8标准的字符集是UTF8MB4,也就是说,MySQL中的UTF8是UTFMB4的子集;在数据库级别解决该问题的临时解决方案是在/etc/my中设置字符。cnf_set_Server=utf8mb4更改为character_set_Server=utf8

 

linux系统
  1. mysql-5.7.14-linux.zip部署包支持在CentOS 6.x/7.x
  2. 服务器硬盘大小要求    

a) /data/mysql_data  如果存在该独立分区,要求该分区 >10G

b) 如果仅存在 /data 分区, 要求该分区 >10G

c) 否则,要求根分区/ > 10G

  1. MySQL_INSTALL_2016-08-17_08-25-29 文件

sha256 ecc8dbe15c120017b4f56fcffd09239e9da84128e0378979997799b3d62e8f3a

验证方法:输入sha256sum MySQL_INSTALL_2016-08-17_08-25-29 计算是否一致

  1. 默认账号 root 初始密码
  2. Mysql程序目录为/opt/mysql_data
  3. Mysql配置文件为/etc/my.cnf
  4. 建议将配置文件中########innodb settings########章节中的innodb_buffer_pool_size = 512M 修改为服务器内存大小的50%-80%
  5. Mysql服务器启动命令:service mysqld start
  6. 停止命令:service mysqld stop
  7. 重启命令:service mysqld restart

操作步骤

1、将mysql-5.7.14-linux.zip部署包中MySQL_INSTALL_2016-08-14_15-37-36.bin文件上传至/opt目录中

2、使用root账号执行sh /opt/MySQL_INSTALL_2016-08-14_15-37-36.bin

3、请耐心等待自动安装,不要做其他操作,直至出现下图提示安装完成后服务器自动重启,重启mysql服务自动启动 

mysql安装使用第1张

 Windows安装说明

步骤1

解压mysql-5.7.11-winx64.zip,讲mysql文件夹拷贝至所需的安装目录;以下操作步骤演示以拷贝至C盘根目录为例;项目存放路径放在容量较大磁盘

mysql安装使用第2张

步骤2

修改mysql目录下的my.int配置文件,将其中路径修改为mysql所在路径

 mysql安装使用第3张

其中innodb_buffer_pool_size = 6G 建议修改为服务器内存大小的50%-80%

步骤3

以管理员方式打开命令行,进入mysql文件夹bin目录,输入以下命令进行安装

mysqld.exe --defaults-file=C:mysqlmy.ini --user=mysql --initialize --console

 mysql安装使用第4张

mysql安装使用第5张

在初始化完MySQL后会给出安装mysqlroot随机密码

 步骤4

注册服务,继续在改命令行窗口中输入以下命令

mysqld --install

 mysql安装使用第6张

最后服务中启动mysql服务即可 

FAQ

修改登录密码

在使用默认密码登录后使用以下命令重置密码,其中newpassword表示重置的新密码

alter user 'root'@'localhost' identified by 'newpassword';

使用navicat还原mysql数据库的注意事项

使用navicat备份还原,其本质还是逻辑备份还原,只是在外面做了一层包装,在还原的过程中,会出现如下的问题:

出现这个问题的原因有如下几种可能性:

  1. 还原过程中使用了不符合GTID要求的语法,比如create table XXX select …;
  2. 设置autocommit=0后,事务内有临时表;

GTID的主要作用是让每个事务都有一个全局唯一的编号,这样在做高可用以及数据恢复的时候可以比较简单,而不用像以前去查找当前事务在哪个file的哪个pos。

目前在使用navicat还原时产生上述问题,数据库层面解决的办法如下:

  1. /etc/my.cnf中对应的三个配置项修改成如下

    autocommit = 1               

    enforce-gtid-consistency = 0

    gtid-mode = 0                

  1. 重启数据库 service mysqld restart
  1. navicat上把之前新建的数据库删除,重新建立数据库,然后再次导入数据,这样仅仅是在数据库层面解决这些报错信息,但是带来的问题需要注意:
  1. autocommit,默认配置里面autocommit是为0的,即用户写完SQL后,需要显示输入commit;才会提交数据,这样可以在一定程度上避免运维人员人工出错,至少在commit之前会看一眼上面的语句。现在autocommit=1以后,默认就输入后立即提交。
  1. GTID,GTID主要解决binlog中事务ID对应的问题,设置GTID以后,高可用设置以及数据从备份恢复时会比较容易。

现在关闭该选项后,高可用设置和还原需要和以前一样,去找filename以及pos。

UTF8问题

MySQL中的UTF8和我们所说C#Java中的UTF8两个概念,由于MySQL支持UTF8的时候,UTF8标准还没有出来,所以MySQLUTF8实现的并不完整,MySQL中的UTF8最多仅仅占用3字节,而目前标准的UTF8最多可占用4字节。

MySQL中完全实现UTF8标准的字符集是UTF8MB4,MySQL中的UTF8是UTFMB4子集。

建议使用UTF8MB4;

数据库层面临时解决问题的办法:

  1. 在 /etc/my.cnf 中character_set_server=utf8mb4 改成 character_set_server=utf8 。
  2. 重启数据库 service mysqld restart
  3. 删除数据库,重新建立数据,重新导入表即可。

注意方法仅仅是备份的时候,导入数据时的解决办法,如果没有备份,需要线上修改进行ALTER TABLE操作

免责声明:文章转载自《mysql安装使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C基础学习笔记——01-C基础第15天(快 yi通)截断字符串,取指定长度字符(中英文通用)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SQL Server 2008新特性——更改跟踪

在大型的数据库应用中,经常会遇到部分数据的脱机和多个数据库的合并问题。比如现在有一个全省范围使用的应用程序,每个市都部署了单独的相同的应用程序服务器和数据库服务器,每个月需要将全省所有市的数据全部汇总起来用于出全省的报表,这是一种很常见的数据库合并问题。再比如我们做了一个SmartClient的应用程序,每个客户端都有应用程序和数据库,另外还有一个中心数据...

zbb20170613 linux 安装 mysql

CentOS下安装MySQL步骤: 第一、 http://www.mysql.com/downloads/mysql-4.0.html下载MySQL-client-5.0.96-1.glibc23.x86_64.rpm和 MySQL-server-5.0.96-1.glibc23.x86_64.rpm 第二、安装服务端: [root@linuxidc my...

EF大数据批量处理----BulkInsert

之前做项目的时候,做出来的系统的性能不太好,在框架中使用了EntityFramework,于是就在网上查资料,研究如何提高EF的性能。在这分享一篇博客批量操作提升EntityFramework的性能里面提供了一个扩展库Entity Framework扩展库,在这里面找到了一些比较好的方法。下面主要介绍其中的一个方法—-批量添加BulkInsert。 这些扩...

error connecting: Timeout expired 超时时间已到. 达到了最大池大小 错误及Max Pool Size设置

【参考】Timeout expired 超时时间已到. 达到了最大池大小 错误及Max Pool Size设置 【参考】【数据库-MySql】 MySqlConnection error connecting: Timeout expired. 【参考】查看mysql数据库连接数、并发数相关信息的命令 解决方案: 1、如果是操作同一个数据库,建议只创建一次...

shell一键安装zabbix

shell     一键部署zabbix服务 (注:脚本当中要注意标点符号的中英文切换) !/bin/bash #关闭防火墙,关闭selinux systemctl stop firewalld setenforce 0 #配置yum源 rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zab...

MySQL中的数据类型的长度范围和显示宽度(转)

长度范围是随数据类型就已经是固定的值,而显示宽度与长度范围无关。 以下是每个整数类型的存储和范围(来自MySQL手册) 类型 字节 最小值 最大值 (带符号的/无符号的) (带符号的/无符号的) TINYINT 1 -128 127 0 255 SMALLINT 2 -32768 32767 0 65535 MEDI...