存档

‘Mysql’ 分类的存档

使用mysql过程中常见sql错误

2013年1月31日 1 条评论

使用mysql的系统中常见的sql错误:

1.事务中某些表是非innodb类型。
SQLWarning ignored:
SQL state ‘HY000′, error code ’1592′,

message [Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.]

2.表中的列为特定类型,而所插入的数据类型没与其字段一一对应

SQLWarning ignored:
SQL state ’01000′, error code ’1265′,
message [Data truncated for column 'f_birthday' at row 1]
阅读全文…

修改mysql配置使其不区分大小写表名

2012年10月30日 没有评论

Linux下的mysql默认是区分表名大小写的,如果开发当中不注意的话,可能会提示找不到对应的表。怎么样让mysql默认不区分大小写了,其他配置很简单,具体的方法如下:
1.用ROOT登录,修改/etc/my.cnf
2.在[mysqld]下加入一行:lower_case_table_names=1
3.重新启动数据库即可。

修改mysql最大连接数的2种方法

2012年10月30日 没有评论

mysql默认最大连接数是100,增加加默认MYSQL连接数的方法有两个,下面对两种方法简单的介绍下

方法一

进入MYSQL安装目录 打开MYSQL配置文件 my.ini(windows) 或 my.cnf(linux环境)查找 max_connections=100修改为 max_connections=500 服务里重起MYSQL即可
阅读全文…

linux中修改mysql的默认编码

2012年7月18日 没有评论

1、登录mysql,查看mysql默认的编码格式

show variables like “character%”;
如果现实-bash: show: command not found 说明没有登录mysql数据库,需要进行登录
结果如下图所示:

2、修改my.cnf 文件

目录为/etc/my.cnf
如果系统中没有my.cnf文件、则需要创建此文件,具体步骤请看3,如果存在,直接跳过步骤3,直接进入步骤4

3、查找.cnf结尾的文件

命令find / -iname *.cnf -print
结果如图:

将上面搜索结果集中/usr/share/mysql目录下任意的一个文件复制到/etc/目录下
命令:cp /usr/share/mysql/my-large.cnf   /etc/my.cnf

4、编辑my.cnf文件

命令:vi /etc/my,cnf
在[client ]下面加入
default-character-set=utf8
在[ mysqld ] 下面加
character_set_server=utf8
 init_connect=’SET NAMES utf8′(或者是SET NAMES ‘utf8′)
网上说在 [ mysql ] 下面加入
default-character-set=utf8
我测试了下是不可以,因为mysqld不识别它,所以我改成character_set_server=utf8

5、重启mysql

service mysql restart

linux中mysql开启远程访问功能

2012年7月18日 没有评论

1、基本原理

mysql安装成功之后,默认的是没有开启远程访问的权限,只有本地才可以进行访问
mysql默认的相关配置实际上是在mysql数据库中mysql用户中的user表中,只需要修改此表中相关记录即可实现
具体查看方式可以参考下图所示:

2、添加新用户进行授权

#grant all privileges on *.* to 创建的用户名 @”%” identified by “密码”;
#flush privileges; #刷新刚才的内容

#格式:grant 权限 on 数据库名.表名 to 用户@登录主机 identified by “用户密码”;   
#@后面是访问mysql的客户端IP地址(或是 主机名) % 代表任意的客户端
#如果填写 localhost 为本地访问(那此用户就不能远程访问该mysql数据库了)。  
 

3、为现有的用户设置远程访问权限

#use mysql;
#update db set host = ‘%’ where user = ‘用户名’;
#如果写成 host=localhost 那此用户就不具有远程访问权限   
#FLUSH PRIVILEGES;
 

4、查看修改后的结果

#use mysql; 
#select host,user,password from user;

linux下mysql 最新版安装图解教程

2012年7月17日 没有评论

linux下mysql 最新版安装图解教程

1、查看当前安装的linux版本

命令:lsb_release -a 如下图所示

通过上图中的数据可以看出安装的版本为RedHat5.4,所以我们需要下载RedHat5.4对应的mysql安装包

阅读全文…

linux下彻底卸载mysql 图解教程

2012年7月17日 1 条评论

linux下彻底卸载mysql 图解教程

1、查找以前是否装有mysql

命令:rpm -qa|grep -i mysql
可以看到如下图的所示:

说明之前安装了:
MySQL-client-5.5.25a-1.rhel5
MySQL-server-5.5.25a-1.rhel5

2、停止mysql服务、删除之前安装的mysql

删除命令:rpm -e –nodeps 包名
# rpm -ev MySQL-client-5.5.25a-1.rhel5
# rpm -ev MySQL-server-5.5.25a-1.rhel5

3、查找之前老版本mysql的目录、并且删除老版本mysql的文件和库

find / -name mysql
查找结果如下:
[root@localhost ~]# find / -name mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql

删除对应的mysql目录
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql
rm -rf /usr/lib64/mysql
具体的步骤如图:查找目录并删除

注意:卸载后/etc/my.cnf不会删除,需要进行手工删除
 rm -rf /etc/my.cnf

4、再次查找机器是否安装mysql

rpm -qa|grep -i mysql
无结果,说明已经卸载彻底、接下来直接安装mysql即可

MySQL性能优化

2011年12月3日 没有评论

一、在编译时优化MySQL
如果你从源代码分发安装MySQL,要注意,编译过程对以后的目标程序性能有重要的影响,不同的编 译方式可能得到类似的目标文件,但性能可能相差很大,因此,在编译安装MySQL适应仔细根据你的应用类型选择最可能好的编译选项。这种定制的MySQL 可以为你的应用提供最佳性能。
技巧:选用较好的编译器和较好的编译器选项,这样应用可提高性能10-30%。

1、使用pgcc(Pentium GCC)编译器
该编译器(http://www.goof.com/pcg/)针对运行在奔腾处理器系统上的程序进行优化,用pgcc编译MySQL源代码,总体性能可提高10%,它是专为奔腾系统设计的。

阅读全文…

分类: Linux, Mysql 标签: ,