由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 吐槽 MySQL
相关主题
mysql 在两台电脑中倒数据? (转载)如何将屏幕显示通过网络实时传到另一台机器?
有什么开源提供MySQL网页查询的?how to decode these data from users' input at a web site
求开源的通用PHP的Apache程序用于MySQL查询操作 sucks (转载)
MySQL 存储 中文出现乱码,用的 hibernate怎样遍历一个字母的组合 (转载)
【MYSQL server里能不能写stored procedure?】同主题转寄 (转载)
请问用什么语言合适cookie的问题
linux, find command question如何提取一个executable的所有dependency?
问个php表单提交不刷新页面的方法Marshal C++ struct to C# struct
相关话题的讨论汇总
话题: mysql话题: default话题: timestamp话题: current话题: update
进入Programming版参与讨论
1 (共1页)
c********1
发帖数: 421
1
MySQL的问题实在太多。
1. 一台机器上的数据库,里面有中文信息,死活无法成功导入到另一台机器上
的mysql,总显示乱码。修改了所有的设置都无用,不是这种乱码就是另外一种乱码。
2,另外一个DB,用phpMyAdmin生成导出.sql文件,在导入另一台机器上时
报错there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT
or ON UPDATE clause
仔细检查.sql文件,发现只有一列是用的ON UPDATE CURRENT_TIMESTAMP
其它的列连 on UPDATE / DEFAULT 语句都没有
后来才知道,该表中有2列均为timestamp,其中之一设了ON UPDATE
CURRENT_TIMESTAMP, 另外一列虽然没有设ON UPDATE CURRENT_TIMESTAMP
也没有设DEFAULT,但mysql在建表时会自动加上DEFAULT CURRENT_TIMESTAMP
………无耻!………自己加上 DEFAULT 0就可以了
3,在linux机器上初次安装完mysql并设root密码之后,需要运行mysqladmin时
所有的命令行必须带-p 参数。否则就会
access denied for user 'root'@'localhost' (using password: NO)
问题是,linux其它的命令如果带-p参数,那么后面接的一般是密码
但MySQL不是,-p的密码并不是inline的,而是需要在敲command之后另外再输入
-p后面可以带DB名称,但不能带密码!
4,在stored procedure中,如果用@命名,那么该变量必须是内部变量,而不是
外部传入的parameter
举例:set @foo = 1; 是对的
但CREATE PROCEDURE `bar`(IN `@foo` INT) 中的@foo就是错的,
必须要去掉这里的"@"符号
当然,相比起Apache/Linux/PHP的嘈点,Mysql的嘈点还算是少的
Developer其实大部分时间都是用于config和operation上了。吐血…………
w**z
发帖数: 8232
2
能google 找到答案的都不能算问题。

DEFAULT

【在 c********1 的大作中提到】
: MySQL的问题实在太多。
: 1. 一台机器上的数据库,里面有中文信息,死活无法成功导入到另一台机器上
: 的mysql,总显示乱码。修改了所有的设置都无用,不是这种乱码就是另外一种乱码。
: 2,另外一个DB,用phpMyAdmin生成导出.sql文件,在导入另一台机器上时
: 报错there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT
: or ON UPDATE clause
: 仔细检查.sql文件,发现只有一列是用的ON UPDATE CURRENT_TIMESTAMP
: 其它的列连 on UPDATE / DEFAULT 语句都没有
: 后来才知道,该表中有2列均为timestamp,其中之一设了ON UPDATE
: CURRENT_TIMESTAMP, 另外一列虽然没有设ON UPDATE CURRENT_TIMESTAMP

c********1
发帖数: 421
3
2,3,4在我发这篇贴子之前,都无法用google找到答案
1到现在都没有找到答案
谢谢

【在 w**z 的大作中提到】
: 能google 找到答案的都不能算问题。
:
: DEFAULT

d****i
发帖数: 4809
4
MySQL已经是最小白最好用的DB了,如果你用过Oracle或者DB2之类的大型商用数据库的
话,恐怕会吐槽更多。关于1,你看看是否可以这样修改:
vi /etc/mysql/my.cnf
在[mysqld]下面,加上以下两行看看行不行
# charset setting
character-set-server = utf8
character-set-filesystem = utf8

DEFAULT

【在 c********1 的大作中提到】
: MySQL的问题实在太多。
: 1. 一台机器上的数据库,里面有中文信息,死活无法成功导入到另一台机器上
: 的mysql,总显示乱码。修改了所有的设置都无用,不是这种乱码就是另外一种乱码。
: 2,另外一个DB,用phpMyAdmin生成导出.sql文件,在导入另一台机器上时
: 报错there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT
: or ON UPDATE clause
: 仔细检查.sql文件,发现只有一列是用的ON UPDATE CURRENT_TIMESTAMP
: 其它的列连 on UPDATE / DEFAULT 语句都没有
: 后来才知道,该表中有2列均为timestamp,其中之一设了ON UPDATE
: CURRENT_TIMESTAMP, 另外一列虽然没有设ON UPDATE CURRENT_TIMESTAMP

c********1
发帖数: 421
5
试过,没用

【在 d****i 的大作中提到】
: MySQL已经是最小白最好用的DB了,如果你用过Oracle或者DB2之类的大型商用数据库的
: 话,恐怕会吐槽更多。关于1,你看看是否可以这样修改:
: vi /etc/mysql/my.cnf
: 在[mysqld]下面,加上以下两行看看行不行
: # charset setting
: character-set-server = utf8
: character-set-filesystem = utf8
:
: DEFAULT

c********1
发帖数: 421
6
这个我强烈同意

【在 d****i 的大作中提到】
: MySQL已经是最小白最好用的DB了,如果你用过Oracle或者DB2之类的大型商用数据库的
: 话,恐怕会吐槽更多。关于1,你看看是否可以这样修改:
: vi /etc/mysql/my.cnf
: 在[mysqld]下面,加上以下两行看看行不行
: # charset setting
: character-set-server = utf8
: character-set-filesystem = utf8
:
: DEFAULT

m***t
发帖数: 254
7
人笨怪刀钝。 show create table一下看看default charset是不是用latin1.

DEFAULT

【在 c********1 的大作中提到】
: MySQL的问题实在太多。
: 1. 一台机器上的数据库,里面有中文信息,死活无法成功导入到另一台机器上
: 的mysql,总显示乱码。修改了所有的设置都无用,不是这种乱码就是另外一种乱码。
: 2,另外一个DB,用phpMyAdmin生成导出.sql文件,在导入另一台机器上时
: 报错there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT
: or ON UPDATE clause
: 仔细检查.sql文件,发现只有一列是用的ON UPDATE CURRENT_TIMESTAMP
: 其它的列连 on UPDATE / DEFAULT 语句都没有
: 后来才知道,该表中有2列均为timestamp,其中之一设了ON UPDATE
: CURRENT_TIMESTAMP, 另外一列虽然没有设ON UPDATE CURRENT_TIMESTAMP

c********1
发帖数: 421
8
不好意思,早就用过这招了
不知道您老是笨,还是您的刀钝,还是两者都是?

【在 m***t 的大作中提到】
: 人笨怪刀钝。 show create table一下看看default charset是不是用latin1.
:
: DEFAULT

m***t
发帖数: 254
9
现在还能mysql utf8搞不定弄出乱码来, 只能是你笨了。

【在 c********1 的大作中提到】
: 不好意思,早就用过这招了
: 不知道您老是笨,还是您的刀钝,还是两者都是?

o***g
发帖数: 2784
10
其他问题,不清楚
1的话,你需要先把数据倒到某个语言里,确定都是unicode的了再往新数据库里倒
旧的里面有可能不知道什么乱七八糟的编码,需要在程序里过一遍

DEFAULT

【在 c********1 的大作中提到】
: MySQL的问题实在太多。
: 1. 一台机器上的数据库,里面有中文信息,死活无法成功导入到另一台机器上
: 的mysql,总显示乱码。修改了所有的设置都无用,不是这种乱码就是另外一种乱码。
: 2,另外一个DB,用phpMyAdmin生成导出.sql文件,在导入另一台机器上时
: 报错there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT
: or ON UPDATE clause
: 仔细检查.sql文件,发现只有一列是用的ON UPDATE CURRENT_TIMESTAMP
: 其它的列连 on UPDATE / DEFAULT 语句都没有
: 后来才知道,该表中有2列均为timestamp,其中之一设了ON UPDATE
: CURRENT_TIMESTAMP, 另外一列虽然没有设ON UPDATE CURRENT_TIMESTAMP

相关主题
请问用什么语言合适如何将屏幕显示通过网络实时传到另一台机器?
linux, find command questionhow to decode these data from users' input at a web site
问个php表单提交不刷新页面的方法 sucks (转载)
进入Programming版参与讨论
w**z
发帖数: 8232
11
are you sure about 3 ? default root has no password.
-ppassword, I use it all the time.

【在 c********1 的大作中提到】
: 2,3,4在我发这篇贴子之前,都无法用google找到答案
: 1到现在都没有找到答案
: 谢谢

c********1
发帖数: 421
12
呵呵,不是“现在”,而是一个legacy的数据库
You made too much assumption, 成天觉得这个笨,那个笨,
你聪明,你来搞定呀呵呵,就一个legacy数据的导入,搞定我给你$500
你看你能不能在半小时内搞定,这样你的hourly rate 就是$1000
嫌少?没关系,你可以开价。
不过如果 你加了价还是搞不定,呵呵呵呵

【在 m***t 的大作中提到】
: 现在还能mysql utf8搞不定弄出乱码来, 只能是你笨了。
m***t
发帖数: 254
13
你要搞不定就把数据倒到一个staging db, 把access发给我。 给你看看什么问题。

【在 c********1 的大作中提到】
: 呵呵,不是“现在”,而是一个legacy的数据库
: You made too much assumption, 成天觉得这个笨,那个笨,
: 你聪明,你来搞定呀呵呵,就一个legacy数据的导入,搞定我给你$500
: 你看你能不能在半小时内搞定,这样你的hourly rate 就是$1000
: 嫌少?没关系,你可以开价。
: 不过如果 你加了价还是搞不定,呵呵呵呵

B*****g
发帖数: 34098
14
亲,oracle不要太简单了,lol

【在 d****i 的大作中提到】
: MySQL已经是最小白最好用的DB了,如果你用过Oracle或者DB2之类的大型商用数据库的
: 话,恐怕会吐槽更多。关于1,你看看是否可以这样修改:
: vi /etc/mysql/my.cnf
: 在[mysqld]下面,加上以下两行看看行不行
: # charset setting
: character-set-server = utf8
: character-set-filesystem = utf8
:
: DEFAULT

d****i
发帖数: 4809
15
亲,beijing美眉,给你跪了,我们这里的oracle DBA整天抱怨oracle难用,看来是他
们太猪了,哈哈

【在 B*****g 的大作中提到】
: 亲,oracle不要太简单了,lol
t***t
发帖数: 6066
16
问题在于,用oracle的时候遇到的问题绝大部分是自己不会,用mysql时遇到的问题有
相当一部分是它的bug,而且往往是无数年前就有的bug,一直不fix。俺当年用mysql半
年,快被恶心死。有的十几年老的bug也不fix。

【在 d****i 的大作中提到】
: MySQL已经是最小白最好用的DB了,如果你用过Oracle或者DB2之类的大型商用数据库的
: 话,恐怕会吐槽更多。关于1,你看看是否可以这样修改:
: vi /etc/mysql/my.cnf
: 在[mysqld]下面,加上以下两行看看行不行
: # charset setting
: character-set-server = utf8
: character-set-filesystem = utf8
:
: DEFAULT

c********1
发帖数: 421
17
都说了。legacy的数据库,而且数据库目前的那个owner十分不配合......
只给我发了一个broken的.sql

【在 m***t 的大作中提到】
: 你要搞不定就把数据倒到一个staging db, 把access发给我。 给你看看什么问题。
l******h
发帖数: 405
18
试试中间加一层ODBC来倒数据。
c*********e
发帖数: 16335
19
en,所以,当一个程序员把lamp四个部分连起来之后,就像修地铁打通了地洞,老板就
会把这个程序员赶走,找个做维护的慢慢继续写。

DEFAULT

【在 c********1 的大作中提到】
: MySQL的问题实在太多。
: 1. 一台机器上的数据库,里面有中文信息,死活无法成功导入到另一台机器上
: 的mysql,总显示乱码。修改了所有的设置都无用,不是这种乱码就是另外一种乱码。
: 2,另外一个DB,用phpMyAdmin生成导出.sql文件,在导入另一台机器上时
: 报错there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT
: or ON UPDATE clause
: 仔细检查.sql文件,发现只有一列是用的ON UPDATE CURRENT_TIMESTAMP
: 其它的列连 on UPDATE / DEFAULT 语句都没有
: 后来才知道,该表中有2列均为timestamp,其中之一设了ON UPDATE
: CURRENT_TIMESTAMP, 另外一列虽然没有设ON UPDATE CURRENT_TIMESTAMP

g*****g
发帖数: 34805
20
我老人家教你一个foot proof的方案吧。就mysql workbench连到旧的和新的数据库上
,在GUI确认中文读写都没问题。如果都没问题,那就是导出导入出问题了。我看很可
能是你新的数据库没设好。
mysql导出导入就是两行脚本,实在没啥技术含量。我老人家半年前做过Oracle->MySQL
,试了几种方案还是Spring batch最好使。总的来说offline migration都没啥难度。
c********1
发帖数: 421
21
谢谢古老师亲自指点
“mysql workbench连到旧的”,可惜那个旧数据库的DBA不配合,死活不开放

MySQL

【在 g*****g 的大作中提到】
: 我老人家教你一个foot proof的方案吧。就mysql workbench连到旧的和新的数据库上
: ,在GUI确认中文读写都没问题。如果都没问题,那就是导出导入出问题了。我看很可
: 能是你新的数据库没设好。
: mysql导出导入就是两行脚本,实在没啥技术含量。我老人家半年前做过Oracle->MySQL
: ,试了几种方案还是Spring batch最好使。总的来说offline migration都没啥难度。

g*****g
发帖数: 34805
22
跟他要readonly的access,如果不给就只能escalate了。

【在 c********1 的大作中提到】
: 谢谢古老师亲自指点
: “mysql workbench连到旧的”,可惜那个旧数据库的DBA不配合,死活不开放
:
: MySQL

1 (共1页)
进入Programming版参与讨论
相关主题
Marshal C++ struct to C# struct【MYSQL server里能不能写stored procedure?】
How to convert zipped text files to a ePub请问用什么语言合适
php DOM parse 中文乱码问题 (转载)linux, find command question
Newbie javascript question: change radio button updates textbox message问个php表单提交不刷新页面的方法
mysql 在两台电脑中倒数据? (转载)如何将屏幕显示通过网络实时传到另一台机器?
有什么开源提供MySQL网页查询的?how to decode these data from users' input at a web site
求开源的通用PHP的Apache程序用于MySQL查询操作 sucks (转载)
MySQL 存储 中文出现乱码,用的 hibernate怎样遍历一个字母的组合 (转载)
相关话题的讨论汇总
话题: mysql话题: default话题: timestamp话题: current话题: update