MySQL数据库系统是一个典型的C/S(客户端/服务器)架构的应用,要访问MySQL数据库需要使用专门的客户端软件。在Linux系统中,最简单、易用的MySQL客户端软件是其自带的mysql命令工具。
通过CentOS 7 编译安装MySQL数据库系统可以了解并掌握MySQL数据库的安装方式,作为一名合格的运维工程师,MySQL数据库的基本操作也是必须要掌握的。
MySQL是一套数据库管理系统,在每台MySQL服务器中,均支持运行多个库,每个库相当于一个容器,存放着许多表,表中的每行记录包含一条具体的数据关系信息,称为数据记录。如图:
登录到数据库
经过安装后的初始化过程,MySQL数据库的默认管理用户名为root,密码为空。
[root@localhost ~]
# mysql -u root
mysql>
//表示登录成功
登录mysql选项的作用:
-u:表示用于指定认证用户;
-p:进行密码校验(没有密码需省略);
-h:远程登录时,需指定IP地址;
-P:远程登录是需指定端口号;
执行MySQL操作语句
MySQL操作语句与SQL server语句语法一模一样,对SQL语句不太了解的朋友可以参考博文SQL Server 语句操纵数据库。在MySQL数据库中,“;”表示结束,输入时不区分大小写。
mysql> show databases;
//查看当前服务器中有哪些数据库
+--------------------+
| Database
|
+--------------------+
| information_schema |
| mysql
|
| performance_schema |
| test
|
+--------------------+
4 rows
in set (
0.
00 sec)
mysql> use mysql;
//切换到mysql数据库
Reading table information
for completion of table
and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show tables;
//查看当前使用的库中有哪些表
+---------------------------+
| Tables_in_mysql
|
+---------------------------+
| columns_priv
|
| db
|
| event
|
| func
|
| general_log
|
| help_category
|
| help_keyword
|
| help_relation
|
| help_topic
|
| innodb_index_stats
|
| innodb_table_stats
|
| ndb_binlog_index
|
| plugin
|
| proc
|
| procs_priv
|
| proxies_priv
|
| servers
|
| slave_master_info
|
| slave_relay_log_info
|
| slave_worker_info
|
| slow_log
|
| tables_priv
|
| time_zone
|
| time_zone_leap_second
|
| time_zone_name
|
| time_zone_transition
|
| time_zone_transition_type |
| user
|
+---------------------------+
28 rows
in set (
0.
00 sec)
mysql>
select database();
//查看当前处于哪个数据库
+------------+
| database() |
+------------+
| mysql
|
+------------+
1 row in set (0.00 sec)
MySQL数据库的数据文件存放在/usr/local/mysql/data目录下,每个数据库对应一个子目录,用于存储数据表文件。每个数据表对应为三个文件,扩展名分别为“.frm”“.myd”和“.myi”。
.frm:表结构;
.myd:存放数据;
.myi:表中索引信息。
查看表结构
DESCRIBE语句:用于显示表的结构,即组成表的各字段(列)的信息,需要指定“库名.表名”作为参数。
mysql> desc mysql.user;
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Field
| Type
| Null | Key
| Default
| Extra
|
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Host
| char(60)
| NO
| PRI |
|
|
| User
| char(
16)
| NO | PRI
|
|
|
| Password
| char(41)
| NO
|
|
|
|
| Select_priv
| enum(
'N',
'Y')
| NO |
| N
|
|
| Insert_priv
| enum('N','Y')
| NO
|
| N
……………… /
/省略部分内容