往MYSQL里写中文就变问号?
问题解决了,原因是在my.cnf中缺少了如下代码:
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
如果不加以上代码,那么即便MYSQL编译安装时指定的编码是UTF8,那么在建库时其默认编码仍是LATIN1,而由于字符集的继承性,库中的表也是LATIN1的了。
这里列几条命令,大家可以自己试下:
1.列出MYSQL支持的所有字符集:
SHOW CHARACTER SET;
2.当前MYSQL服务器字符集设置
SHOW VARIABLES LIKE 'character_set_%';
3.当前MYSQL服务器字符集校验设置
SHOW VARIABLES LIKE 'collation_%';
4.显示某数据库字符集设置
show create database 数据库名;
5.显示某数据表字符集设置
show create table 表名;
6.修改数据库字符集
alter database 数据库名 default character set 'utf8';
7.修改数据表字符集
alter table 表名 default character set 'utf8';
8.建库时指定字符集
create database 数据库名 character set gbk collate gbk_chinese_ci;
9.建表时指定字符集
CREATE TABLE `mysqlcode` (
`id` TINYINT( 255 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`content` VARCHAR( 255 ) NOT NULL
) TYPE = MYISAM CHARACTER SET gbk COLLATE gbk_chinese_ci;
个人认为以上方法不太好用,如果都不行吧数据库做备份,之后MySQL Server Instance Config里将实例删了重新建一个(主意字符编码),如果还不行重装Mysql(卸载mysql时要注意,非常复杂,具体方法我分享了)
相关文档:
1.MySQL简介
MySQL是一个广泛使用的结构化查询语言(SQL)数据库服务器。和其他SQL服务器一样,MySQL提供了访问和管理SQL数据库的方法,但是,MySQL同时也提供了创建数据库结构以及在这些结构中添加、修改和删除这些结构的工具。
MySQL数据库相关的软件包主要有以下几种:
......
最近了解了一下MYSQL注入,也实际操作了一下,确实发现了他的威力。
一个注入漏洞可以让人直接拿到服务器权限。
总结一下:
1,目录的权限不能太高,不然别人能往里写文件,以前用0777真是太愚蠢了。
2,严格过滤数据,整形一律转int或用mysql_escape_string
3,设置合理的数据库权限,不要用ROOT,不然会死得很惨。
4 ......
http://www.3d308.cn/article.asp?id=37
shell> mysql -u root mysql
mysql> Update user SET Password=PASSWORD('new_password')
Where user='root';
mysql> FLUSH PRIVILEGES;
......
etting up OpenLDAP with MySQL backend
用mysql作后台数据库安装openldap
author: TBONIUS
OpenLDAP is an X.500 Lightweight Directory Access Server used for
centralized authentication and directory lookups. ......
默认情况下Linux内的mysql数据库mysql.user表内的用户权限只是对localhost即本机才能登陆。所以需要更改权限,否则无法使用Mysql Administrator连接服务器,会发生如下所示的错误:
MySQL Administrator 1.1.9配置,连接mysql数据库
Could no ......