Mysql基础知识

下载mysql服务端与客户端:mysql-server 和 mysql-client

启动mysql:service mysql start

           或者 /etc/init.d/mysql start

为用户添加用户名和密码(新用户):

        mysqladmin -u ADMIN(用户名)  password 'PASSWD'(密码)

配置文件:/etc/mysql/my.cnf

数据存储目录:/etc/lib/mysql/*  其中information_schema,mysql,performance_schema为服务自带的数                              据库,不要乱碰。

日志文件:/var/log/mysqld.log


注意:mysql 的sql 语言一般用英文大写,其实小写该服务也可以识别。

一般的sql语言:

SHOW  DATABASES; :展示所用的数据库

CREATE  DATABASE  DB;  :新建一个数据库

DROP DATABASE DB; :删除一个数据库

SELECT  VERSION();  :  打印系统版本发行号

SELECT 运算;:运算

USE DB; :使用一个数据库


数据库中的TABLE的建立:

CREATE  TABLE  TAB

        VAR   integer(si0ze)/int(size)/samllint(size)/tinyint(size), 存储整数数据,默认为11

        VAR   decimal(size.d)/numeric(size.d),     存储浮点数数据

        VAR   char(size),         存储一定长度的字符串

        VAR    varchar(size),           存储可变长度的字符串,长大长度为size

        VAR    date(yyymmdd),            存储日期

);

显示一个数据库表格:DESCRIBE(或者)DESC TAB;

删除一个数据库表格:DROP TABLE TAB;


对于表格的修改:

ALTER TABLE TAB RENAME NEW_TAB;   重命名一个数据表格

ALTER TABLE TAB ADD NEW_VAR VAR_TYPE;  为数据表格添加新变量

ALTER TABLE TAB DROP COLUMN VAR;   删除一个数据表格的变量

ALTER TABLE TAB MODIFY VAR VAR_TYPE;    修改一个数据表格变量的变量类型

ALTER TABLE TAB CHANGE COLUMN VAR NEW_VAR VAR_TYPE;   修改一个数据表格的变量


为数据表格的变量追加数据:

INSERT INTO TAB VALUES(val1,val2...);或

INSERT INTO TAB (col1,col2...) VALUES(val1,val2...);      为表中各列元素增添值

UPDATE TAB SET COL=NEW_VALUES WHERE $COL=$VAL;      在$COL=$VAL的那行的COL元素修改为新值

DELETE [COL1,COL2...] FROM TAB WHERE 列运算;       删除符合列运算的信息

DELETE * FROM TAB;        删除该表格的全部信息


查看数据表格的各行信息:

SELECT [DISTINCT] COL1,COL2... FROM TAB;      查看各行的COL1,COL2...的信息

SELECT * FROM TAB;        查看各行的信息

SELECT COL1,COL2... FROM TAB WHERE 列运算;      查看符合列运算的哪些行的COL1,COL2...的信息

SELECT * FROM TAB WHERE conditon1 AND condition2;          查看符合条件1和条件2的各行信息

SELECT * FROM TAB WHERE conditon1 OR condition2;           查看符合条件1或条件2的各行信息

SELECT * FROM TAB ORDER BY COL;        以COL的值排序来显示各行的信息

SELECT * FROM TAB ORDER BY COL DESC;        以COL的值逆序来显示各行的信息


MySQL的用户管理

CREATE USER USERNAME IDENTIFIED BY  'PASSWORD';        添加账户和该账户的密码

DROP USER USERNAME;        删除账户

RENAME USER USERNAME TO NEW_USERNAME;        重命名账户

SET PASSWORD=PASSWORD('NEW_PASSWORD');           修改账户密码

SET PASSWORD FOR USERNAME =PASSWORD('NEW_PASSWORD');        为账户修改密码

权限管理:     通过GRANT授予权限,REVOKE撤销权限

GRANT ALL PRIVILEGES ON 层级 TO 'USERNAME'@'HOST' IDENTIFIED BY 'PASSWORD';

            层级:    *.* -> 第一个表示DATABASE层级

                            第二个表示全局层级

                            第三个表示TABLE层级

                            *.*表示所有数据库的所有表

            HOST:    %表示所有主机

                     可以是精确的主机名或地址    如192.168.10.124

                     可以是使用通配符             如*.linuxcast.net

REVOKE ALL PRIVILEGES FROM USERNAME;        撤销用户的所有权限


数据库备份         (在bash命令行上使用)

mysqldump -u USERNAME -p DBNAME > 备份文件名.sql        备份数据库

mysql -u USERNAME -P DBNAME < 备份文件名.sql       载入备份文件


数据库编码

SHOW CHARACTER SET;        显示所有编码

SHOW VARIABLES LIKE 'character_set%';       显示character编码的变量

SHOW VARIABLES LIKE 'collation%';        显示collation编码的变量

ALTER DATABASE DBNAME CHARACTER SET utf8 COLLATE utf8-general-ci;

                        更改数据库编码character_set为utf8,collation为utf8-general-ci;

[修改配置文件my.cnf]

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

[mysqld]

default-character-set=utf8

init-connect='SET NAMES utf8'

collation-server=utf8-unicode-ci

character-set-server=utf8

你可能感兴趣的:(mysql)