mysql导入sql文件

mysql主从复制

江枫思渺然 提交于 2019-11-29 07:33:27
1、主从服务器分别作以下操作 : 1.1、版本一致 1.2、初始化表,并在后台启动mysql 1.3、修改root的密码 2、修改主服务器master: #vi /etc/my.cnf [mysqld] log-bin=mysql-bin //[必须]启用二进制日志 server-id=222 //[必须]服务器唯一ID,默认是1,一般取IP最后一段 3、修改从服务器slave: #vi /etc/my.cnf [mysqld] log-bin=mysql-bin //[不是必须]启用二进制日志 server-id=226 //[必须]服务器唯一ID,默认是1,一般取IP最后一段 4、重启两台服务器的mysql /etc/init.d/mysql restart 5、在主服务器上建立帐户并授权slave:  登录MySQL服务器。 #mysql -uroot -pmttang  在主服务器新建一个用户赋予“REPLICATION SLAVE”的权限。你不需要再赋予其它的权限。 mysql> CREATE USER 'mysync'@'10.29.255.168' IDENTIFIED BY 'password'; mysql> GRANT REPLICATION SLAVE ON *.* TO 'mysync'@'10.29.255.168' IDENTIFIED BY

MySQL复制以及调优

不打扰是莪最后的温柔 提交于 2019-11-29 07:25:43
一. 简介 MySQL自带复制方案,带来好处有: 数据备份。 负载均衡。 分布式数据。 概念介绍: 主机(master):被复制的数据库。 从机(slave):复制主机数据的数据库。 复制步骤: (1). master记录更改的明细,存入到二进制日志(binary log)。 (2). master发送同步消息给slave。 (3). slave收到消息后,将master的二进制日志复制到本地的中继日志(relay log)。 (4). slave重现中继日志中的消息,从而改变数据库的数据。 下面放一张经典的图片来说明这一过程: 二. 实现复制 实现复制有以下步骤: 1.设置MySQL主库的二进制日志以及server-id MySQL配置文件一般存放在/etc/my.cnf # 在[mysqld]下面添加配置选项 [mysqld] server-id=1 log-bin=mysql-bin.log server-id是数据库在整个数据库集群中的唯一标示,必须保持唯一。 重启MySQL。 注:如果MySQL配置文件中已经配置过此文件,则可以跳过此步。 2.新建复制账号 在主库里面新建用于从库复制主库数据的账号,并授予复制权限。 mysql> GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO user_name@'host'

mysql主从

和自甴很熟 提交于 2019-11-29 07:25:13
1. 主从简介 为了解决以下典型两个问题,我们导入主从学习 用一台数据库存放数据,若此数据库服务器宕机了导致数据丢失怎么办? 业务量大了,数据多了,访问的人多了,一台数据库无法保证服务质量了怎么办? 1.1 主从作用 实时灾备,用于故障切换 读写分离,提供查询服务 备份,避免影响业务 1.2 主从形式 一主一从 主主复制 一主多从---扩展系统读取的性能,因为读是在从库读取的 多主一从---5.7开始支持 联级复制 2. 主从复制原理 主从复制步骤: 主库将所有的写操作记录到binlog日志中并生成一个log dump线程,将binlog日志传给从库的I/O线程 从库生成两个线程,一个I/O线程,一个SQL线程 I/O线程去请求主库的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中 SQL线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,达到最终数据一致的目的 3. 主从复制配置 主从复制配置步骤: 1)确保从数据库与主数据库里的数据一样 2)在主数据库里创建一个同步账号授权给从数据库使用 3)配置主数据库(修改配置文件) 4)配置从数据库(修改配置文件) 需求: 搭建三台MySQL服务器,一台作为主服务器,其它两台作为从服务器(其中一项主从为主库中存有数据,另一项主库中没有数据),主服务器进行写操作

MySQL(Mariadb)主从同步基础

有些话、适合烂在心里 提交于 2019-11-29 07:24:08
一、准备阶段 两台linux虚拟机centos7版本,都安装了mariadb 5.5.6 进行主从同步配置: 首先防火墙要开放3306端口, 主库服务器ip:192.168.211.100 从库服务器ip:192.168.211.101 二、配置主库 1.主库上给从库ip授权 mysql>GRANT REPLICATION SLAVE ON *.* to 'rep1'@'192.168.211.101' identified by 'test123456'; mysql>FLUSH PRIVILEGES; 2.修改主库配置文件 设置server-id,开启binlog vim /etc/my.cnf 添加: log-bin=/var/lib/mysql/binlog server-id=1 binlog-do-db = study1 server-id:主库端的ID号; log-bin:同步的日志路径及文件名 binlog-do-db:要同步的数据库名 设置不同步的数据库: binlog-ignore-db = mysql 不同步mysql库和test库 binlog-ignore-db = test 配置好后重启mysql(mariadb) service mariadb restart 3.查看主库状态 mysql> show master status;

mysql主从同步配置

ぃ、小莉子 提交于 2019-11-29 07:16:52
Mysql的主从复制至少是需要两个Mysql的服务,当然Mysql的服务是可以分布在不同的服务器上,也可以在一台服务器上启动多个服务。 首先确保主从服务器上的Mysql版本相同。 一、安装部署mysql 1、 安装服务器端:yum install mysql-server          yum install mysql-devel   安装客户端: yum install mysql 2、启动服务 service mysqld start 3、安装完后执行下面命令进行初始化配置,会要求设置密码: /usr/bin/mysql_secure_installation 4、设置允许远程连接到该mysql服务器 登陆到mysql: mysql -uroot -ptest123 [root@zhoujietest ~]# mysql -uroot -ptest123 #账号root,密码test123 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 18 Server version: 5.5.35-log MySQL Community Server (GPL) by Remi Copyright (c) 2000, 2013, Oracle and/or

Windows环境下MySQL主从配置

为君一笑 提交于 2019-11-29 07:15:36
以下操作是在 Windows Web Server 2008 R2 操作系统下 一、环境介绍及说明 主库的版本:mysql-5.6.42-winx64.zip 主库的ip地址:127.0.0.1 主库的端口:3306 从库的版本:和主库一样 从库的ip地址:127.0.0.1 从库的端口:3307 如果有多余的服务器也可以不用都配置到一台电脑上,只需要各服务器ip能ping通就行。 注:主库和从库版本可以一致也可以不一致,需要说明一点,如果两者版本不一致,一般主库的版本需要比从库的版本低,这样就可以避免由于版本问题,有些sql不能执行的问题。 二、下载安装MySQL MySQL官网给出的安装包有两种格式,一个是msi格式,一个是zip格式的,这里使用zip格式的进行安装。 MySQL5.6下载链接: https://dev.mysql.com/downloads/mysql/5.6.html#downloads 下载完成后解压,解压后的目录: 三、配置MySQL主从 (1)主库(MySQL-Master)的安装与配置 主库根目录下有一个 my-default.ini 命名的配置文件复制一个,改名为 my.ini,用文本编辑器打开,进行配置以下基本信息: [mysqld] # 服务端使用的字符集默认为8比特编码的latin1字符集,设置为utf8字符 character-set

Java开发笔记(一百四十六)JDBC的应用原理

為{幸葍}努か 提交于 2019-11-29 06:52:06
关系数据库使得海量信息的管理成为现实,但各家数据库提供的编程接口不尽相同,就连SQL语法也有所差异,像Oracle、MySQL、SQL Server都拥有自己的开发规则,倘若Java针对每个数据库单独做一套方法,这些数据库操作方法将变得又庞大又冗余。为了解决不同数据库各自为政的问题,Java设计了统一的JDBC规范,只要程序员按照JDBC的方法操作,那么不管什么数据库都能在JDBC框架下正常处理。 JDBC全称“Java DataBase Connectivity”,意思是Java语言的数据库连接管理。JDBC由JDK内部的数据库管理工具类组成,它提供了标准的数据库操作方法,帮助程序员使用统一的方式开展数据库编程,从而提高了数据库编程的开发效率。然而因为JDBC屏蔽了相关的内部细节,所以在操作具体数据库之前,需要额外引入对应的数据库连接器,也就是导入该数据库的jar包。 以MySQL为例,它的Java版本连接器可前往官网下载,下载页面是https://dev.mysql.com/downloads/connector/j/,在该页面的下方选择操作系统“Platform Independent”之后,会显示两种压缩包(tar.gz格式与zip格式),在其中一种的右边单击Download按钮开始下载。下载完毕将文件解压,找到里面的Java连接器如mysql-connector-java

sql文件导入时报错2006 – MySQL server has gone away

好久不见. 提交于 2019-11-29 06:50:50
导SQL数据库结构+数据时,如果数据是批量插入的话会报错:2006 - MySQL server has gone away。 解决办法:找到你的mysql目录下的my.ini配置文件,加入以下代码 max_allowed_packet=500M wait_timeout=288000 interactive_timeout = 288000 自己看情况更改数值,最后记得 重启你的mysql服务 这样的话就能很好的解决MySQL server has gone away问题了。max_allowed_packet是mysql允许最大的数据包,也就是你发送的请求; wait_timeout是等待的最长时间,这个值大家可以自定义,但如果时间太短的话,超时后就会现了MySQL server has gone away #2006错误。max_allowed_packet参数的作用是,用来控制其通信缓冲区的最大长度。 来源: oschina 链接: https://my.oschina.net/u/476/blog/176205

将mysql从5.5.25升级到8.0.12

走远了吗. 提交于 2019-11-29 05:53:36
将mysql从5.5.25升级到8.0.12过程中遇到几个问题,记录如下: 将数据库安装好后,导入原来的数据,启动tomcat,报错unable to load authentication caching_sha2_plugin,解决办法如下: ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 FLUSH PRIVILEGES; #刷新权限 参考:https://blog.csdn.net/u010026255/article/details/80062153 网上也有说通过修改my.ini,加入 [mysqld] default_authentication_plugin=mysql_native_password 经过我的测试,不成功,不知道为什么 。 上述问题解决后,Tomcat启动时又遇到:java.math.BigInteger cannot be cast to java.lang.Long,无法将类型从biginteger转换到Long型,网上有说改原始代码的

python连接mysql服务端

孤街浪徒 提交于 2019-11-29 04:42:49
python连接mysql的客户端 import pymysql # 导入模块 conn = pymysql.connect( host='127.0.0.1', # 主机模块 port=3306, # 端口号 user='root',# 用户名 password='123', # 密码 database='db', # 需要连接的库 charset='utf8' # 指定编码utf8 ) cursor = conn.cursor() # 获取游标 # cursor = conn.cursor(pymysql.cursors.DictCursor) # 获取的查询结果更加规范化 便于分辨 sql = "select * from dep;" ret = cursor.execute(sql) # ret 受影响的行数 # res = cursor.executemany(sql,[(a,b),(a1,b1),(a2,b2)]) # 插入多行数据时 print(cursor.fetchall()) # 取出所有的 print(cursor.fetchmany(3))# 取出多条 print(cursor.fetchone()) # 取出单条 cursor.scroll(3,'absolute') # 绝对移动,按照数据最开始位置往下移动3条 cursor.scroll(1,