代码改变世界
[登录 · 注册]
  • mysql安装使用
  •  

    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服务自动启动 

     Windows安装说明

    步骤1

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

    步骤2

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

     

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

    步骤3

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

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

     

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

     步骤4

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

    mysqld --install

     

    最后服务中启动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操作

  • 【推广】 阿里云小站-上云优惠聚集地(新老客户同享)更有每天限时秒杀!
    【推广】 云服务器低至0.95折 1核2G ECS云服务器8.1元/月
    【推广】 阿里云老用户升级四重礼遇享6.5折限时折扣!
  • 原文:https://www.cnblogs.com/wmqiang/p/10552636.html
Copyright 2008-2020 晋ICP备12007731号-1