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

Linux下MySQL基础使用命令

2015-04-15 22:50 459 查看
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 linuxcaseDEFAULT CHARACTER SET utf8DEFAULT 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%';

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息