Chinaunix首页 | 论坛 | 博客
  • 博客访问: 801781
  • 博文数量: 455
  • 博客积分: 9776
  • 博客等级: 中将
  • 技术积分: 5870
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-19 23:23
文章分类

全部博文(455)

文章存档

2011年(455)

分类: LINUX

2011-05-08 18:44:01

一、帐号与权限

设定 root 和其他 user 的密码

mysqladmin -u root password '新密码'

mysqladmin -u root -p

Enter password:    此时再输入密码(建议采用)

use mysql;

mysql> UPDATE user SET password=password('新密码') where user='root';

只改 root 的密码,如果没有用 where ,则表示改全部 user 的密码

mysql> FLUSH PRIVILEGES; 在 mysql 资料库内,一定要用 flush 更新记忆体上的资料

删除空帐号

mysql> DELETE FROM user WHERE User = '';

mysql> FLUSH PRIVILEGES;

建立新帐号

mysql> GRANT 权限 ON 资料库或资料表 TO 使用者 IDENTIFIED BY '密码';

权限

资料库或资料表

*.* 所有资料库里的所有资料表

* 预设资料库里的所有资料表

资料库。* 某一资料库里的所有资料表

资料库。资料表 某一资料库里的特定资料表

资料表  预设资料库里的某一资料表

设定/修改权限

用 root 登入 MySQL

mysqladmin -u root -p

Enter password:

mysql> GRANT all ON db35.* TO s35@'localhost' IDENTIFIED BY 's35';

把 db35 这个资料库(含其下的所有资料表),授权给 s35,从 localhost 上来,密码为s35

mysql> GRANT all ON *.*  把所有资料库及资料表授权给别人,太危险了!

mysql> GRANT all??? ON www.* TO '*'@'*' IDENTIFIED BY '';

把 www 这个资料库(含其下的所有资料表),授权给 任何机器任何人,无密码(通常给不特定人士使用)

mysql> FLUSH PRIVILEGES; (最後一定要强迫更新权限)

二、资料库/资料表/栏位的操作

建立资料库 CREATE DATABASE 资料库名;

语法:CREATE DATABASE db_name

使用资料库 USE 资料库名;

语法:USE db_name

删除资料库 DROP DATABASE 资料库名;

语法:DROP DATABASE [IF EXISTS] db_name

建立资料表

CREATE TABLE 资料表名 (栏位1 资料型态, 栏位2 资料型态, ……);

语法:

CREATE TABLE [IF NOT EXISTS] tbl_name (create_definition,…) [table_options] [select_statement]

例:

craete database basic;

use basic;

create table basic(

no char(4)

name char(10)

id char(10));

create_definition:

col_name type [NOT NULL | NULL] [DEFAULT default_value] [AUTO_INCREMENT]

[PRIMARY KEY] [reference_definition]

or PRIMARY KEY (index_col_name,…)

or KEY [index_name] KEY(index_col_name,…)

or INDEX [index_name] (index_col_name,…)

or UNIQUE [INDEX] [index_name] (index_col_name,…)

or [CONSTRAINT symbol] FOREIGN KEY index_name (index_col_name,…)

[reference_definition]

or CHECK (expr)

资料结构(type):

资料型态 说明

TINYINT 有符号的范围是-128到127, 无符号的范围是0到255。

SMALLINT 有符号的范围是-32768到32767, 无符号的范围是0到65535。

MEDIUMINT 有符号的范围是-8388608到8388607, 无符号的范围是0到16777215。

INT 有符号的范围是-2147483648到2147483647, 无符号的范围是0到4294967295。

INTEGER INT的同义词。

BIGINT 有符号的范围是-9223372036854775808到 9223372036854775807,无符号的范围是0到18446744073709551615。

FLOAT 单精密浮点数字。不能无符号。允许的值是-3.402823466E+38到- 1.175494351E-38,0 和1.175494351E-38到3.402823466E+38。

DOUBLE 双精密)浮点数字。不能无符号。允许的值是- 1.7976931348623157E+308到-2.2250738585072014E-308、 0和2.2250738585072014E-308到1.7976931348623157E+308。

DOUBLE PRECISION DOUBLE的同义词。

REAL DOUBLE的同义词。

DECIMAL DECIMAL值的最大范围与DOUBLE相 同。

NUMERIC DECIMAL的同义词。

DATE 日期。支援的范围是'1000-01-01'到'9999-12-31'。

DATETIME 日期和时间组合。支援的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'

TIMESTAMP 时间戳记。范围是'1970-01-01 00:00:00'到2037年的某时。

TIME 一个时间。范围是'-838:59:59'到'838:59:59'。

YEAR 2或4位数字格式的年(内定是4位)。允许的值是1901到2155。

CHAR 固定长度,1 ~ 255个字元。

VARCHAR 可变长度,1 ~ 255个字元。

TINYBLOB

TINYTEXT 最大长度为255(2^8-1)个字符。

MEDIUMBLOB

MEDIUMTEXT 最大长度为16777215(2^24-1)个字符。

LONGBLOB

LONGTEXT 最大长度为4294967295(2^32-1)个字符。

ENUM 一个ENUM最多能有65535不同的值。

SET 一个SET最多能有64个成员。

index_col_name:

col_name [(length)]

reference_definition:

REFERENCES tbl_name [(index_col_name,…)]

[MATCH FULL | MATCH PARTIAL]

[ON DELETE reference_option]

[ON UPDATE reference_option]

reference_option:

RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT

table_options:

type = [ISAM | MYISAM | HEAP]

or max_rows = #

or min_rows = #

or avg_row_length = #

or comment = "string"

or auto_increment = #

select_statement:

[ | IGNORE | REPLACE] SELECT … (Some legal select statement)

阅读(572) | 评论(0) | 转发(0) |
0

上一篇:在命令模式下学习linux

下一篇:SUN

给主人留下些什么吧!~~