欢迎光临
我们一直在努力

mysql数据库基础总结

一、mysql的安装和基本配置

1、yum安装mysql

#yum install -y mysql mysql-devel mysql-server

2、启动初始化mysql

#service mysqld start

3、设置mysql的root用户密码

#mysqladmin -u root password 'icesr.com'

4、登陆mysql
#mysql -u root -p
#输入密码即可正常登陆mysql

5、mysql的配置文件,文件位置: /etc/my.cnf
mysql的数据的数据库文件位置: /var/lib/mysql
mysql日志的日志文件位置: /var/log/mysql.log
mysql服务使用的协议是 tcp ,默认端口是 3306

二、mysql的基本操作命令

1、命令连接数据库
连接本地数据库

#mysql -u root -p

连接远程数据库
#mysql -h ip地址 -P 端口号 -u root -p

2、SQL操作语句默认都为大写,并非严格限制只能,基本上SQL语句都是使用分号结尾;

3、数据库以及表相关的SQL操作命令

SHOW DATABASES;			显示所有的数据库
USE icesrc.com;			选择相应的数据库icesr.com
CREATE DATABASES icesr;		创建数据库
DROP DATABASES icesr;		删除数据库	
CREATE TABLE icesr_com{		创建一个表
id int,
course_name varchar(50),
cource_length int(10),
teacher varchar(10),
category carchar(100)
};

DESCRIBE icesr_com;		查看一个数据表
DESC icesr_com;		同样查看一个数据表的简写
ALTER TABLE icesr_com RENAME icesr;	重命名数据表
ALTER TABLE icesr_com ADD link varchar(200);	数据表中添加一个新的属性
ALTER TABLE icesr_com DROP COLLUMN link;	数据库中删除一个新的属性
ALTER TABLE icesr_com MODFIFY teacher varchar(100);	修改一个列的数据类型
ALTER TABLE icesr_com CHANGE COLLUMN teacher lecture varchar(100);	重命名一个列
                                     列原始名 列新名  

4、向表格中插入数据修改数据SQL操作命令

INSERT INTO 语句用于向表格中插入新的行。
语法:
INSERT INTO 表名称 VALUES (值1, 值2,….)
我们也可以指定所要插入数据的列:
INSERT INTO table_name (列1, 列2,…) VALUES (值1, 值2,….)

SELECT 用于查询表中的数据
语法:SELECT 列名1,列名2 ,… FROM table_name
SELECT 列名 FROM table_name WHERE 列名 运算符 值
SELECT * FROM icesr_com WHERE lecture=’math’;

Update 语句用于修改表中的数据。
语法:
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

DELETE 语句用于删除表中的行。
语法
DELETE FROM 表名称 WHERE 列名称 = 值

删除某行
“Fred Wilson” 会被删除:

DELETE FROM Person WHERE LastName = 'Wilson' 

删除所有行
可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:

DELETE FROM table_name	或者:
DELETE * FROM table_name

5、WHERE 子句

如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。

语法
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

如果只希望选取居住在城市 “Beijing” 中的人,我们需要向 SELECT 语句添加 WHERE 子句:

SELECT * FROM Persons WHERE City='Beijing'

AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。

AND 运算符实例
使用 AND 来显示所有姓为 “Carter” 并且名为 “Thomas” 的人:

SELECT * FROM Persons WHERE FirstName='Thomas' AND LastName='Carter'

OR 运算符实例
使用 OR 来显示所有姓为 “Carter” 或者名为 “Thomas” 的人:

SELECT * FROM Persons WHERE firstname='Thomas' OR lastname='Carter'

ORDER BY 语句用于根据指定的列对结果集进行排序。
ORDER BY 语句默认按照升序(从小到大)对记录进行排序。

如果您希望按照降序(从大到小)对记录进行排序,可以使用 DESC 关键字。

实例 1
以字母顺序显示公司名称:
SELECT Company, OrderNumber FROM Orders ORDER BY Company

三、mysql的用户管理

1、mysql的系统用户是存在数据库mysql的user表中

2、创建一个mysql用户
CREATE USER sdil IDENTIFIED BY ‘icesr.com’;
用户名 用户的密码
创建了用户默认是没有权限不能正常登陆,权限将在以后说明

3、 DROP USER sdil; 删除用户sdil

4、RENAME USER sdil TO test; 重命名用户

5、SET PASSWORD FOR 用户名=PASSWORD(‘新密码’);

四、mysql权限系统
1、mysql权限控制包括两个阶段:
①检测用户是否能够连接;
②检查用户是否具有所执行动作的权限。

2、mysql授予权限可分为以下几个层级:
①全局层级
②数据库层级
③表层级
④列层级
⑤子程序层级

3、授予一个用户权限
GRANT ALL PRIVILEGES ON 层级 to 用户名@主机 IDENTIFIED BY 密码;

GRANT ALL PRIVILEGES ON *.* to sdil@’%’ IDENTIFIED BY ‘icrsr.com’;
授予的权限 授权对象 用户名 主机 密码

这里的主机是指允许从哪些主机进行连接,可以使用以下形式:
①远程所有主机:“%”
②精确的主机名或IP地址: www.icesr.com 或 192.168.10.241
③使用“*”通配符:*.icesr.com
④指定一个网段:192.168.10.0/255.255.255.0

撤销一个用户的权限
REMOKE ALL PRIVILEGES FROM 用户名;

五、mysql简单的备份恢复

MySQL使用最为广泛的备份工具是mysqldump。
使用mysqldump进行基本的数据库备份恢复。

备份一个数据库:

mysqldump -u root -p icrser > icesr_backup.sql

数据库名
从一个备份文件恢复一个数据库:

mysql -u root -p icesr < icesr_backup.sql

数据库名
从一个MySQL服务器备份数据库到另一个MySQL服务器(注意应该先在远程MySQL上创建好数据库):

[local-server]# mysqldump -u root -p icesr | mysql -u root -p --host=remote-server -C icesr

六、mysql数据库的编码

1、MySQL数据库默认的编码是:

character set :latin1   
collation : latin1_swedish_ci

2、查看MySQL支持的编码:
show character set;

3、查看当前MySQL服务器默认编码:

SHOW VARIABLES LIKE 'character_set%'; 
show variables like 'collation%';

4、创建数据库的时候指定编码:

CREATE DATABASE icesr
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;

5、修改一个已有数据库的编码:

ALTER DATABASE icesr CHARACTER SET utf8 COLLATE utf8_general_ci;

6、设置数据库默认编码:
修改MySQL配置文件my.cnf:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
default-character-set = utf8    
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

修改之后重启MySQL生效。

未经允许不得转载:SRE空间 » mysql数据库基础总结

分享到:更多 ()

评论 抢沙发

评论前必须登录!

 

oracle