MySQL数据库的日常使用及维护


一:使用MySQL数据库

1、查看数据库结构:

查看当前服务器中有哪些库:

SHOWDATABASES 语句:用于列出当前MySQL服务器中包含的库;经过初始化后的MySQL服务器,默认建立了三个库:testmysqlinformation_schema(其中mysql库中包含了用户认证相关的表)

mysql> SHOW DATABASES;

查看当前使用的库中有哪些表

SHOWTABLES 语句:用于列出当前所在的库中包含的表。操作之前,需要先使用USE语句切换到所使用的库:

mysql> USE mysql;

mysql> SHOW TABLES;

Mysql数据库的数据文件默认存放在/usr/local/mysql/var/目录下,每个数据库对应一个子目录,用于存储数据表文件;

每一个数据表对应为三个文件,后缀名分别为”.frm”” .MYD ”” .MYI ”

  1. 查看表的结构

  • DESCRIBE 语句:用于显示表的结构,即组成表的各字段(列)的信息;

  • 需要指定“库名.表名”作为参数;

  • 若只指定表名参数,则需先通过“USE”语句切换到目标库。

创建及删除库和表:

b、创建新的库:

CREATEDATABASE 语句:用于创建一个新的库,需指定数据库名称作为参数。

Eg:创建一个名为welcome的库:

mysql> CREATE DATABASE welcome;

新建的空数据库在/usr/local/mysql/var/目录下会自动生成一个与新建的库名相同的空文件夹。

c、创建新的表:

CREATETABLE 语句:用于在当前库中创建新的表,需指定数据表名称作为参数,并定义该表格所使用的各字段。

格式: CREATETABLE表名(字段1名称类型,字段2名称类型,PRIMARY kEY (主键名))

welcome库中创建users表。其中,字段定义部分的DEFAULT用于设置默认的密码字串,PRIMARY用于设置主键字段名。

mysql> USE welcome;

mysql> CREATE TABLE users (user_name CHAR(16) NOT NULL, user_passwd CHAR(48) DEFAULT '', PRIMARY KEY (user_name));

删除一个数据表:

DROPTABLE 语句:用于删除库中的表,需要指定“库名.表名”作为参数;若只指定表名参数,则需先通过“USE”语句切换到目标库。

Eg:删除welcome库中的users表:

mysql> DROP TABLE welcome.users;

删除一个数据库:

DROPDATABASE 语句:用于删除指定的库,需要指定库名作为参数。

Eg:删除名为welcome的库:

mysql> DROP DATABASE welcome;

3、管理表中的数据记录:

插入数据记录

INSERTINTO 语句:用于向表中插入新的数据记录。

格式: INSERTINTO 表名(字段1,字段2 VALUES(字段1的值,字段2的值,

welcome库中的users表中插入一条记录:用户www,对应的密码为“123456”:

mysql> use welcome;

mysql> INSERT INTO users(user_name,user_passwd) VALUES('www',PASSWORD('123456'));

Eg:向welcome库中的users表中插入一条新的记录,用户qqq,对应密码“654321”。

mysql> use welcome;

mysql> INSERT INTO users VALUES('qqq',PASSWORD(654321));

查询数据记录

SELECT 语句:用于从指定的表中查找符合条件的数据记录。

格式: SELECT字段名1,字段名2… FROM表名WHERE 条件表达式

表示所有字段可以使用通配符“*”,若要列出所有的数据记录则可以省略WHERE条件子句。

Eg:查看welcome库中的users表内的所有数据记录:

mysql> select * from welcome.users;

根据特定的条件查找记录,WHERE条件子句是必不可少的。

Eg:查找users表中用户名为qqq的记录,输出其用户名、密码字段的信息:

mysql> SELECT user_name,user_passwd from welcome.users where user_name='qqq';

修改数据记录

UPDATE 语句:用于修改、更新表中的数据记录。

UPDATE表名SET字段名1=字段值1[,字段名2=字段值2]WHERE 条件表达式

Eg:修改users表中用户名为www的记录,将密码字串设为空值,并验证:

mysql> UPDATE welcome.users SET user_passwd=PASSWORD('') WHERE user_name='www';

mysql> select * from welcome.users;

mysql数据库服务器中,用于访问数据库的各种用户信息都保存在mysql库的user表中。

Eg:将数据库用户root的密码设为123456,当再次使用“mysql–uroot-p”访问mysql数据库服务器时,必须使用此密码进行验证。

mysql> UPDATE mysql.user SET password=PASSWORD('123456') WHERE user='root';

mysql> FLUSH PRIVILEGES;

[root@ns ~]# mysqldump -u root -p password '123456'

删除数据记录

DELETE 语句:用于删除表中指定的数据记录。

格式: DELETE FROM 表名 WHERE 条件表达式

Eg:删除users表名为www的数据记录,并验证:

mysql> DELETE FROM welcome.users WHERE user_name='www';

mysql> SELECT * FROM welcome.users;

mysql数据库服务器中,默认添加了从本机访问数据库的空用户(userpassword均为空)。基于数据库安全性考虑,应该删除这些空用户。

mysql> SELECT user,host,password FROM mysql.user WHERE user='';

mysql> DELETE FROM mysql.user WHERE user='';

推荐阅读:

Percona_Toolkit 简介及安装 -- MySQL管理员必备的工具包

  • 1
  • 2
  • 下一页

相关内容