一、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数据库基础总结
评论前必须登录!
注册