您的位置:首页 > 运维架构 > Linux

Linux下MySQL基础使用命令

2017-04-06 12:56 357 查看
www.mysql.com 官方网站
communlty server 社区版 免费的
显示系统自带的mysql包yum list | grep mysql
安装mysql:yum install -y mysql-server mysql mysql-devel
看按的版本:rpm -qi mysql-server
初始化:service mysqld start /restart
设置密码:mysqladmin -u root password '密码'
开机启动:chkconfig mysqld on
配置文件:/etc/my.cnf 数据文件:/var/lib/mysql/日志文件:/var/log/mysald.log 日志远程连接端口:tcp 3306
登陆MySQL mysql (-h 192.168.0.1) -u root -p
查看MySQL版本 SELECT VERSION();
查看系统日期 SELECT CURRENT_DATE;
同时查看系统版本和系统日期 SELECT VERSION(),CURRENT_DATE;
简单计算 SELECT 4*4; SELECT 4+4;
查看已有数据库 SHOW DATABASES;
创建数据库 CREARE DATABASES 数据库名;
删除数据库 DROP DATABASES 数据库名;
使用数据库 USE 数据库名;
SQL语言基础
SELECT UPDATE DELETE INSERT WHERE
显示表格里的所有数据 SELECT *FROM 表名;
创建数据库 CREARE DATABASE 数据库名;
删除数据库 DROP DATABASE 数据库名;
每一列是一个属性; 每一行是一条记录;
数据类型integer(size),int(size),smallint(size),tinyint(size) 存储整数数据
decima(size,d),numeric(size,d) 存储浮点数数据
char(sie) 存储固定长度字符串
varchar(size) 存储可变长度字符串
date (yyyymmdd) 存储日期
创建表格CREARE TABLE 表名称(列名称1 数据类型, 列名称2 数据类型, 列名称3 数据类型 );
显示所有表格 SHOW TABLES;
显示表的结构 DESCRIBE 表名;
删除一个表格 DROP TABLE 表名;
重命名表名ALTER TABSE 表名 RENAME 新表名;
向表中添加一列ALTER TABLE 表名 ADD 列名称 列数据类型;
删除表中一列ALTER TABLE 表名 DROP COLUMN 列名;
修改一个列的数据类型ALTER TABLE 表名 MODIFY 列名 列数据类型;
重命名一个列ALTER TABLE 表名 CHANGE COLUMN 列名 新列名 新列数据类型;
向表格中插入一条记录INSERT INTO 表名 VALUES (值1,值2,....);或INSERT INTO 表名(列1,列2) VALUES (值1,值2);
从表格中查询记录SELECT 列名称1,列明称2... FROM 表明称; 或SELECT * FROM 表明称;
从表格中按条件查询一条记录SELECT 列名称 FROM 表名 WHERE 列 运算符 值;
从表格中删除一条记录DELETE FROM 表名称 WHERE 列 运算符 值;或DELERE * FROM 表名称;
更新一条记录UPDATE 表名称 SET 列名称=新值 WHERE 列=值;
删除返回结果重复项SELECT DISTINCT 列名称 FROM 表名称;
where条件中使用逻辑组合SELECT *FROM 表名称 WHERE 条件1 AND 条件2;SELECT *FROM 表名称 WHERE 条件1 OR 条件2;
对查询结果按指定列进行排序SELECT * FROM 表名称 ORDER BY 列名称;SELECT * FROM 表名称 ORDER BY 列名称 DESC;

MYSQL用户管理默认只有一个root用户默认保存在user表中
创建新用户:CREATE USER 用户名 IDENTIFIED BY '密码';直接创建后不能直接登陆,因为没有设置权限。
删除用户: DROP USER 用户名;
重命名用户名:RENAME USER 原用户名 TO 新用户名;
修改当前用户密码:SET PASSWORD=PASSWORD('新密码');
修改指定用户密码:SET PASSWORD FOR 用户名=PASSWORD('新密码');

mysql 权限系统
权限控制两个阶段1 检查用户是否能够链接;2 检查用户是否具有所有执行动作的权限;
授予一个用户权限:GRANT ALL PRIVILEGES ON 层级to 用户名@主机 IDENTIFIED BY 密码;
eg:授予nash_su用户全局级全部权限GRANT ALL PRIVILEGES ON *.* to 'nash_su'@'%'IDENTIFIED BY 'linuxcase'; 授予nash_su用户针对linuxcast数据库全部权限。GRANT ALL PRIVILEGES ON linuxcase.* to 'nash_su'@'%'IDENTIFIED BY 'linuxcase';
撤销一个用户权限:REVOKE ALL PRIVILEGES FROM 用户名;
%主机 %是不限制是哪个主机的访问;可以使ip地址或者主机名;使用“*”通配符 可以指定网段;可以设lockhost;本地连接;
root远程登陆也需要上边的提权;不建议打开;

MYSQL简单的备份和恢复
最为广泛的备份恢复工具mysqldump
备份一个指定数据库:mysqldump -u root -p 数据库名称 > 备份文件.sql
备份出来的是纯文本的sql文件,可以修改后作为其他数据库数据使用。
从备份的SQL文件恢复一个指定数据库:mysqldump -u root -p 数据库名称 < 备份文件.sql

数据库编码设置
编码主要影响以下两个方面:1、数据库保存相同内容所占用的空间大小;2、数据库与客户端通信;
显示系统的编码设置:SHOW CHARACTER SET;
SHOW VARIABLES LIKE 'character_set%';SHOW VARIABLES LIKE 'collation%';
创建数据库的时候可以使用命令指定编码:CREATE DATABASEA linuxcase DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_cl;
也可以修改一个数据库的编码:ALTER DATABASE linuxcase CHARACTER SET utf8 COLLATEU utf8_general_cl;
设置默认编码/etc/my.cnf文件{client}default-character-set=utf8{mysql}default-character-set=utf8{mysqld}default-character-set=utf8collation-server=utf8_unicode_ciinit-connect='SET NAMES utf8'character-set-server=utf8
修改之后重启MySQL服务,通过下边的命令查看默认编码:SHOW VARIABLES LIKE 'character_set%';
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql