默认情况下,使用mysqldump备份出来的表记录都是在一条insert语句,这样对于导入来说效率要高些,但是遇到记录很多的大表,可能会超过缓存区的大小,从而导致备份失败,可以使用参数实现一条记录一个insert语句,例如: mysqldump -uroot -p --skip-opt dbna...
mysql的存储过程可以很方便使用游标来实现一些功能,存储过程的写法大致如下: 先创建一张表,插入一些测试数据: DROP TABLE IF EXISTS netingcn_proc_test;CREATE TABLE `netingcn_proc_test` ( `id` INTEGER(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR...
下面存储过程原本是想根据传入的status值来更新对应列的name,代码如下: drop table if exists test_tbl;create table test_tbl (name varchar(20),status int(2));insert into test_tbl values(abc, 1),(edf, 2),(xyz, 3);drop procedure IF EXISTS pro_te...
把查询结果赋值到变量,大部分情况下使用游标来完成,但是如果明确知道查询结果只有一行(例如统计记录的数量,某个字段求和等),其实可以使用set或into的方式来实现赋值。示例代码: drop table if exists test_tbl;create table test_tbl (name varchar(2...
Mysq支持单行和多行这两种注释代码的方式,单行使用两个减号,多行使用/* */ -- 单行注释/* 多行注释,第一行 第二行 第三行*/ 曾经碰到过在本机window的mysql客户端下可以顺利创建存储过程,拿到linux服务器的客户端中创建的时候老是提示存储过程有错误,错...
关于mysql master/slave的应用场景就不做介绍,本文主要讲解是配置。配置相对还是比较简单,只需要在master和slave的mysql的配置文件中增加几行就可以了。 Master上修改: 修改master配置文件,linux默认为/etc/my.cnf,在 mysqld 段中添加如下配置。 server...
mysqldump是mysql自带的一个备份数据库的工具,使用mysqldump可以很方便的把已有的数据库导出来,使用 mysqldump --help如果MYSQL_HOME/bin没有加入PATH,需要指定去路径 可以看到有很多可选参数。 需要注意:默认情况下,mysqldump并不会导出数据库的存储过...
把文件中的数据导入到mysql表中时可能会碰到乱码的问题,造成乱码的根源就是编码问题,涉及到编码的有数据库和数据文件。要想导入时避免不出现乱码,只要保证数据文件的编码和导入时甚至的编码一直即可,注意:不是和数据库的编码一致。例如:数据文件data.s...
最近准备测试一下mysql的MyISAM与InnorDB存储引擎的性能,在使用mysqldump备份数据的时候出现如标题的错误,网上查了一下,有人说是杀毒软件的问题,有人说是tmp目录太小了,由于是在linux下,可以排除杀毒软件的问题,那就是tmp目录太小了,使用df命令查看了...
mac os x 版本:10.7.3,在mysql的官网没有发现对应版本的下载,所以下载了一个mysql-5.5.22-osx10.6-x86_64.dmg,安装什么的都比较简单,安装好后,通过系统偏好设置设置中也能正常启动MySQL服务,同时在面板中取消了开机自动启动服务。本人比较喜欢在命令...
Mysql命令行导入数据库: 1,将要导入的.sql文件移至bin文件下,这样的路径比较方便 2...
摘要: 利用Xtrabackup工具备份及恢复(MySQL DBA的必备工具) XtrabackupMySQL DBA的必...
MySQL 5.7.5后实现了对功能依赖的检测。默认启用了only_full_group_by 的SQL模式,会...
在部署实施过程工作中,我经常采取的是全量备份数据量或者增量备份数据库,对于mysql...
一、数据库事务隔离级别 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted...
mysql的sql_mode合理设置 sql_mode是个很容易被忽视的变量,默认值是空值,在这种设置...