Dec 15, 2011

MySQL

安装

主要针对 windows xp + 装了IPV6 的情况,会发生 apply security settings 失败的情况,是因为 daemon 在ipv6 [::1] 服务,而不是 127.0.0.1

解决办法
1. 安装,apply security settings 失败。别急
2. 修改 my.ini,添加 bind-address=127.0.0.1
3. mysqladmin -u root password set-root-password-here

可以了

参见
MySQL 5.1.56 for Windows XP/Vista/7

Tutorial

MySQL 基本配置和 mysqldb 的用法
先看这个

mysql 服务器配置

Mysql常用命令大全详解
Mysql导入导出工具Mysqldump和Source命令用法详解
mysqldump -u user -p dbname > dumpfile.sql
只导出数据表,不导出数据
mysqldump -u user -p -d dbname > dumpfile.sql
只导出数据,不导出数据表
mysqldump -u user -p -t dbname > dumpfile.sql

同样的,对于table,也可如上操作
mysqldump -u user -p dbname table1 [ table2 ... ] > dumpfile.sql

其他参数
--opt 是默认的
--opt               Same as --add-drop-table, --add-locks, --create-options,
                      --quick, --extended-insert, --lock-tables, --set-charset,
                      and --disable-keys. Enabled by default, disable with
                      --skip-opt.

mysqldump 生成文本文件,字符集是数据库本身的字符集。可以改变字符集
mysqldump -u user -p --default-character-set=charset databasename > dumpfile.sql
有趣的是,导出文件只是在出现非ASCII的地方设定字符集,其他MYSQL命令都是ASCII编码。所以即使你导出 utf8 文件,
文件头也是 ASCII,没有 utf8 的头

MySQL Commands 列表

基础介绍,优化等
基础介绍部分可以看看

MySQLdb MySQL Connectivity With Python

character set and collation

MSSQL Collation 排序规则

查看数据库 character set 和 collation
USE your_database_of_interest;
show variables like "character_set_database";
show variables like "collation_database";
show variables like "character_set_%"; 可以看到更多信息

创建数据库时可以指定这两项,其后也可以修改
CREATE DATABASE db_name CHARACTER SET charset_name COLLATE collation_name
ALTER DATABASE db_name CHARACTER SET charset_name COLLATE collation_name

查看charset,collation列表:
show character set
show collation

同样的,对于 table
查看
SHOW CREATE TABLE the_table;
创建和修改
CREATE TABLE tbl_name (column_list)
[[DEFAULT] CHARACTER SET charset_name]
[COLLATE collation_name]]

ALTER TABLE tbl_name
[[DEFAULT] CHARACTER SET charset_name]
[COLLATE collation_name]

对于column

1. 数据库和表的 character set 可以不同
2. 默认情况下,database->table->column 的字符集和排序是继承的。

0 comments: