您的位置:首页 > 数据库 > MySQL

Mysql开发使用实用笔记

2016-01-06 19:42 726 查看
1、MYSQL命令相关

以指定参数启动mysql数据库

--datadir=数据库目录

--basedir=mysql主目录

--defaults-file=指定启动所用配置文件,如my.cnf,默认使用/etc/my.cnf

Mysql 导出查询结果到文件 -N 去除表头 FIELDS TERMINATED BY '' 以指定分隔符隔开

mysql -h mysqlhost -u mysql_user -p -Ne 'select user_name from user' userdb > filepath

select * from my_table where name="geqiandebei" into outfilefilename fields terminated by '|';"

2、常见使用及编程问题:

一、MySql Error Code: 2006 – MySQL 服务器已离线 原因:数据库连接已断开,默认一个连接在8小时(28800秒)中未被使用的时候Mysql将其释放。

①建议修改MYSQL参数

max_allowed_packet=100M

interactive_timeout=28800000

wait_timeout=28800000

②完善代码,在执行查询语句之前先用mysql_ping()检查连接,如果连接已失效则重连,用此方法就算重启了数据库,程序也不用重启

初始化的时候:

mysql_init() ...

mysql_real_connect()...

char value = 1;

mysql_options(&my_connection, MYSQL_OPT_RECONNECT, (char *)&value);

执行语句的时候:

mysql_ping(&my_connection);

mysql_reslt_local = mysql_query(&my_connection, mysql_tmp_local );

二、编码问题

①修改数据库编码

配置文件/etc/my.cnf 中 [mysqld] 增加 default-character-set=utf8

②命令行操作,执行 show variables like 'characer%'; 查看编码

set character_set_client=utf8 设置对应编码

③代码控制

初始化连接时,设置默认编码,C语言写入mysql数据时需要设置写入时的编码

mysql_query(&my_connection,"set names gbk");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: