LINUX下安装mysql,一般都要同时安装客户端和服务器。
因为 mysql体系是分布式的,因此都存在服务器端和客户端两个系统。
服务器端系统包括一组在服务器主机上运行的程序和相关文件。而客户端系统则是连接数据库服务器,用来执行查询、修改和管理数据库中的数据的程序。
一.什么是sql
sql一般指结构化查询语言。
结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
二.什么是mysql
mysql是一个关系数据库管理系统。他是一个程序,可以存储大量种类繁多的数据。
mysql使用sql结构化查询语言。
使用DBMS,来管理数据库。数据库管理系统(database management system)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称dbms。
三.安装mysql
1.常见组网图
1)mysql服务器和客户端同时安装在一台机器上。
-----A--------
2)mysql客户端安装在服务器A上,服务器安装在另一台已经连接的服务器B上。
A-------B
3)一台终端A,上面不运行任何sql相关的软件,然后和服务器B(运行mysql客户端)相连,B再和服务器C(运行mysql服务器)连接。
A---------B--------------C
在第3)种模式下,mysql客户端并不在自己的机器上,需要登录到其他机器去使用mysql客户端,需要使用telnet等来操作。
本文中,采用第一种模式。
2.安装mysql
1)yum install mysql 安装mysql客户端
2)yum install mysql-server 安装mysql服务器
3)service mysqld start 启动mysql服务器
四.登陆和退出mysql服务器
mysql用户包括:普通用户、root用户。
root用户是超级管理员,拥有所有权限,比如创建用户、删除用户、修改所有用户密码和管理权限等。
普通用户只拥有创建该用户时赋予它的权限。
1.登陆mysql服务器
mysql -u root
进入mysql。mysql刚安装完毕,有默认用户root,和默认密码为空。
-u 是用来指定用户名。
当然,也可以这样:
mysql -h localhost -u root -p
-h用来指定服务器名,如www.xxx.com或者192.168.59.130,localhost表示本机,127.0.0.1也指本机。
当然,如果你登陆的是本机的话,-h是可以忽略的。
-u同上
-p指出密码,不填默认密码为空。所以密码如果不为空,而你又不没有加上-u,则会提示错误。
回车之后,会提示你输入密码。
mysql -u root -p
登陆root账户。
当然,还可以这样:
mysql -u root -pxxx
这个xxx是我登陆的密码,是文本格式的,如果你不想让别人看到你的密码,还是采用之前的方法。
mysql -u root -p mysql
不仅连接上了mysql服务器,还连接上了数据库mysql。如果不指定mysql数据库的话,会默认登陆mysql数据库中。
2.断开连接
QUIT
断开连接。当然,EXIT或者CTRL+D,也是可以的。
五.创建和删除普通用户
1.创建用户
方法一:用CREATE USER语句
CREATE USER 'user1'@'localhost' IDENTIFIED BY 'user1'
创建名为user1,密码也是user1的用户。
方法二:用INSERT语句
直接将用户的信息添加到mysql.user表中。
具体例子就不给了
方法三:用GRANT语句
GRANT SELECT ON *.* TO 'user3'@'localhost' IDENTIFIED BY 'user3';
创建名为user3,m密码也是user3的用户。
GREAT语句可以为用户授权,比如*.*表示数据库下的所有表。user3对所有表都有查询权限。
2.删除用户
方法一:用DROP USER语句
DROP USER 'user3'@'localhost';
删除用户名为user3的用户
方法二:用DELETE语句
直接将用户的信息从mysql.user中删除
具体例子就不给了。
六.修改密码
1.root用户修改root密码
方法一:使用mysqladmin命令
mysqladmin -u root -p password"root"
将密码改为root.
方法二:用UPDATE
use mysql
update user set Password = PASSWORD('hello') where user='root';
flush privileges;
先选定数据库,然后针对某一个用户(这里是root)设定密码(这里是hello)
最后用 flush privileges;刷新mysql的系统权限相关表
方法三:用SET
SET PASSWORD=PASSWORD('root');
修改root的密码为root。
2.root用户修改普通用户密码
方法一.使用SET语句
SET PASSWORD FOR 'user2'@'localhost'=PASSWORD('user1');
方法二.使用UPDATE
直接修改mysql数据库下的user表。
就不写具体例子了。
方法三:使用GRANT语句
GRANT SELECT ON *.* to 'user2'@'LOCALHOST' identified by 'user2';
3.普通用户修改密码
SET PASSWORD=PASSWORD('test');
七.操作数据库
1.创建数据库
CREATE DATABASE example;
2.删除数据库
DROP DATABASE example;
3.显示数据库
show databases;
4.选择数据库
use mysql;
八.操作表
1.创建表
CREATE TABLE 表名(属性名 数据类型 【完整性约束条件】,
属性名 数据类型 【完整性约束条件】
属性名 数据类型);
例如:
create table text1
(
id INT,
name VARCHAR(20),
SEX BOOLEAN
);
2.显示数据库中的表
show tables;
3.查看表结构
DESCRIBE text1;
4.查看表详细结构
show create table text1;
5.基本查询
select id,name from text1;
从表text中查询字段id和name的信息数据。
6.插入数据
insert into text1(id,name,sex) values(2000,'xiaosan',0);
7.显示表中数据
SELECT * FROM text1;
8.修改记录
update name set id=3000 where name='xiaosan';
9.删除记录
delete from name where id=3000;
10.删除表
drop table 表名
九.数据库的选择
Oracle、DB2、SQL Server:主要应用于比较大的管理系统。SQL Server主要在windows下运行
Access、MysSQL、PostgreSQL:中小型数据库,主要应用于中小型的管理系统,Access只能在windows下运行
复杂度:
Oracle、DB2 > MySQL、PostgreSQL
性能:
Oracle、DB2 > MySQL、PostgreSQL
--转自