使用MySQL时遇到的问题

一、

1、现象:我们把数据库的字符集编码设置为utf-8,我们通过DOS界面向表的某一列插入汉字时会遇到类似

data too long for column ‘name‘ at row 1

的错误。

2、错误原因:

3、解决的办法:

(1)set names gbk;(只对当前窗口有效)

(2)找到mysql的安装目录,把文件my.ini里的“default-character-set=utf8”修改为“default-character-set=gbk”,然后重启mysql服务。

时间: 2024-10-07 05:45:29

使用MySQL时遇到的问题的相关文章

java运行代码连接mysql时提示:找不到类错误

使用IntelliJ IDEA Community Edition进行代码编写.. 使用一下代码连接mysql时出现了:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver错误 然后就很好奇,import都能导入数据. 后来用idea工具打开以前的练习,发现架包也存在. 但是新建的练习就没有把架包弄进来.然后出现了这类错误.. 原因是:使用idea工具开发时,如果之前练习有添加相应的数据,那么在external libraries中是能显

编译mysql时,到一半的时候报错,c++死掉

编译mysql时,到一半的时候报错,c++死掉,因为内存太小导致,创建交换分区或者增加内存重新编译. 设置2G交换分区来用下 : # dd if=/dev/zeroof=/swapfile bs=1k count=2048000 --获取要增加的2G的SWAP文件块 # mkswap/swapfile     -- 创建SWAP文件 # swapon/swapfile     -- 激活SWAP文件 # swapon -s            -- 查看SWAP信息是否正确 # echo"/v

连接mysql时提示java.sql.SQLException: Access denied for user 'root'@'DESKTOP-N2B2D9A' (using password: YES)

用root连接mysql时提示:访问被拒绝 检查一下mysql server是否开启,发现后台在运行着..  然后查了一下mysql的用户表,发现root只能运行使用本地ip(localhost或者127.0.0.1)进行连接 解决方法:新开一个权限GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'jeffw' WITH GRANT OPTION; 然后查询一下:select * from user; 新开的root的已经开启权限,

hibernate+mysql时,会出现事物不管用

hibernate+mysql时,会出现事物不管用(transation.rollback();没效果,数据在session.flush后直接进行了数据库操作) 很可能出现的问题是在mysql上..., 在/etc/my.cnf中[mysqld]下加上default-storage-engine=InnoDB ,效果是使用InnoDB引擎 show engines;命令可以查看当前使用的是什么数据库引擎

打开mysql时,提示 1040,Too many connections

打开mysql时,提示 1040,Too many connections,这样就无法打开数据库,看不了表里边的内容了. 出现这个问题的原因是,同时对数据库的连接数过大,mysql默认的最大连接数是100,我们可以在命令行方式下 查看最大连接数的值. mysqladmin -uusername -ppassword variables |find "max_con" 注意上面的命令中,-u和用户名之间,-p和密码之间没有空格. 我们可以通过以下方法修改数据库的最大连接数:(命令行方式)

启动mysql时显示:/tmp/mysql.sock 不存在的解决方法

Can't connect to local MySQL server through socket '/tmp/mysql.sock' 上述提示可能在启动mysql时遇到,即在/tmp/mysql.sock位置找不到所需要的mysql.sock文件,主要是由于my.cnf文件里对mysql.sock的位置设定导致. mysql.sock默认的是在/var/lib/mysql, 如果发现确实是在该目录下,可以在[mysqld]下面加入mysql.sock的pathvi /etc/my.cnf(m

jsp页面写入中文到mysql时出现了乱码(转)

今天自己在用jsp把中文写入mysql的时候出现乱码,从数据库中读取出来的时候也显示为“??”,感觉应该出现了编码转换过程中的字符信息丢失.然后在mysql中直接执行该命令,发现中文是正常的,所有认为是在往数据库中写中文的时候出现了问题. 在网上找了一会,发现不少解决方法,就转了一篇 过来,这个刚好能解决自己的问题.     在此表示感谢. 今天遇到了在jsp页面写入中文到mysql时出现了乱码,已经漫长的过程,问题终于解决了.         先说下自己的开发环境:jsp+Eclipse+my

mysql时该如何估算内存的消耗,公式如何计算?

经常有人问配置mysql时该如何估算内存的消耗.那么该使用什么公式来计算呢? 关心内存怎么使用的原因是可以理解的.如果配置mysql服务器使用太少的内存会导致性能不是最优的;如果配置了太多的内存则会导致崩溃,无法执行查询或者导致交换操作严重变慢.在现在的32位平台下,仍有可能把所有的地址空间都用完了,因此需要监视着. 话虽如此,但我并不觉得找到什么可以计算内存使用的秘诀公式就能很好地解决这个问题.原因有--如今这个公式已经很复杂了,更重要的是,通过它计算得到的值只是“理论可能”并不是真正消耗的值

登陆mysql时出现unknown variable 'character_set_client=UTF8' 的错误

今天,登陆数据库服务器的时候,出现了下面的错误: 1 [[email protected] app]# mysql -uroot -p 2 mysql: unknown variable 'character-set-client=utf8' 查了下my.cnf的配置文件,是在client段下面配置了这么一个选项,按道理来说,是不会有问题的呀,然后上网google了下,发现: 了解到这个是mysqlbinlog的一个bug. 既然client选项组里允许通过character_set_clien

迁移Windows下的MySQL时字符乱码问题

我们经常会直接复制一份MySQL的Data目录到新的环境下,正常情况下重启MySQL即可使用,但有时也会遇到些问题: 1.程序访问时提示找不到表,实际表已经存在 这种情况是由于数据库所有者可能不一致导致的,建议手工创建数据库后,再拷贝Data目录中相关的数据文件到数据库中. 如果还不行,请拷贝Data目录下的ibdata1文件到新的Data目录下,此种情况是存储方式问题. 2.程序新增数据.修改数据时发生乱码 A.安装mysql时,其中会有一个步骤选择编码方式,此时选择gbk即可.如果不选择,默