MySql安装与使用(linux)
安装 MySQL
注意:此处安装是yum安装为例:
MySQL安装
#yum install mysql-server
完后显示如下:
MySQL初始化
#service mysqld start
查看端口号(默认端口号:3306)
‘#mysql_secure_installation’
Enter current password for root (enter for none ):请输入当前root用户的密码,如果没有按回车,注意此root并非linux的root用户。
Set root password ?是否设置root密码?
需要设置的密码:Vqdqi0oTVejf
Remove anonymous users? [Y/n] 是否移除匿名用户,选择移除(Y)
Disallow root login remotely? [Y/n] 是否允许root远程登录(默认不允许)
Remove test database and access to it? [Y/n] 是否移除测试数据库(建议先不移除)
Reload privilege tables now? [Y/n] 是否重新加载权限表(当我们更改了mysql用户相关的信息之后建议去重载权限)
MySQL的启动控制
语法:service mysqld start/stop/restart
进入mysql的方式:
mysql -u 用户名 -p 密码
退出MySQL到Linux命令行:
mysql>exit
默认目录/文件位置(了解)
数据库存储目录: /var/lib/mysql
配置文件: /etc/my.cnf
Mysql的基本操作
1.名词介绍
以Excel文件举例:
数据库:可以看作是整个excel文件。
数据表:可以看作是一个excel文件中的工作表。
行(记录):可以看作是一个工作表中的一行。
列(字段):可以看作是一个工作表中的一列。
2.库操作
以下命令在MySQL终端命令行中执行(大小写均可):
SHOW DATABASES; //显示当前MySQL中全部的数据库
CREATE DATABASE 库名; //创建数据库
DROP DATABASE 库名; //删除数据库
USE 库名; //切换数据库
SHOW DATABASES; //执行的效果
创建数据库:创建yunwei数据库
`mysql>CREATE DATABASE yunwei;`
删除数据库:删除yunwei数据库
mysql>DROP DATABASE yunwei;
切换数据库:切换到test数据库
mysql>use test;
3.表操作
SHOW TABLES; //显示当前数据库中所有的表名(必须先use数据库)
CREATE TABLE 表名称 //在当前数据库下创建数据表
(
列名称 1 数据类型 [NOT NULL AUTO_INCREMENT],
列名称 2 数据类型,
列名称 3 数据类型,
……,
PRIMARY KEY(主键字段名)
);
常见的数据类型:int (整型),char (定长字符),varchar(不定长字符)
主键一般就是序号所在的那一列(主键不能重复)
DESC 表名; //描述一个数据表(查看表结构)
DROP TABLE [IF EXISTS] 表名; //删除一个数据表
案例:使用上述的语法
查看所有的数据表
创建数据表(去test库中创建)
id 字段 , 11位整型,不为空, 自增, 主键
username字段, varchar类型, 20长度
password字段, char雷子能够, 30长度
SQL (standard query language)语句:
create table xg(
id int(11) not null auto_increment,
username varchar(20),
password char(32),
PRIMARY KEY(id));
查看表结构:
删除数据表:
4.记录/字段操作(重点)
4.1,增加记录
语法1:INSERT INTO 表名称 VALUES (值1,值2,……..);
语法2:INSERT INTO 表名称(列1,列2,……) VALUES (值1,值2,…….);
案例:往数据表xg表中新增一个记录username为zhangsan,password为123456(加密结果E10ADC3949BA59ABBE56E057F20F883E)
SQL语句:
insert into xg(username,password) values ('zhangsan','E10ADC3949BA59ABBE56E057F20F883E');
4.2,更新记录
语法:UPDATE 表名称 SET 列名称 1 = 新值1,列名称2 = 新值 2…. WHERE 行名称 = 某值;
案例:使用更新语句更新id大于等于2的记录,将其密码改为:6CA5AC1929F1D27498575D75ABBEB4D1
SQL语句
`UPDATE xg SET password='6CA5AC1929F1D27498575D75ABBEB4D1' WHERE id>=2;`
以后在执行影响行数的sql操作的时候一定需要注意条件是否写错或者漏写。
4.3,查询记录
SELECT 列名称1,列名称2….. FROM 表名称 WHERE 条件;
SELECT * FROM 表名称 WHERE 条件;
案例:查询刚才新增的记录
只查询用户和密码,并且是id=2的用户:
`SELECT username,password FROM xg WHERE id =2;`
查询全部:
SELECT * FROM xg;
4.4,删除记录
DELETE FROM 表名称 WHERE 行名称 = 值;
案例:删除id为2的记录
SQL语句:
DELETE FROM xg WHERE id=2;
5.备份与还原(重点)
5.1,备份(导出)
全量备份(数据+结构):
#mysqldump -uroot -p123456 -A >备份文件路径 //-A 表示全部数据库(all)
指定库备份(数据+结构):
#mysqldump -uroot -p123456 库名 > 备份文件路径
多个库备份(数据+结构):
#mysqldump -uroot -p123456 --databases db1 db2 > 备份文件路径
建议:备份成 xxx.sql (xxx.tar.gz) 的形式
案例:备份整个库
`[root@hadoop ~]# mysqldump -uroot -pVqdqi0oTVejf -A >/root/sql_201804061609.sql`
案例:每1分钟自动备份1次test数据库
计划认为编写:
等待几分钟观察目录变化
5.2,还原(导入)
还原部分(1)mysql命令行source方法 和 (2) 系统命令行方法
1.还原全部数据库:
(1)mysql命令行:mysql > source 备份文件路径
(2)系统命令行:#mysql -uroot -p123456 < 备份文件路径
2.还原单个数据库(需要指定数据库)
(1)mysql > use 库名
mysql> source 备份文件路径
(2)#mysql -uroot -p123456 库名 < 备份文件路径
3.还原单个数据库的多个表(需指定数据库)
案例1:人为删除xg表(模拟数据表丢失),然后通过最后一次备份还原数据表。
先删除数据表
还原操作:
案例2:需要还原sql文件(mobile.sql 31万条数据)
设置Mysql连接字符集:
mysql>set names utf8; 【三码一致,服务器端+传输过程中+客户端】
SELECT * FROM mobile.sql
四.扩展
1.mysql的远程管理工具
分为两大类:B/S:架构,C/s架构。
B/S:B是指浏览器,S是指服务器。例如:百度搜索应用就属于BS架构软件。
C/s:C是指客户端,S是指服务器。例如:QQ ,电脑端微信等应用程序都是CS架构。
在BS中,mysql有个典型的管理工具:PMA(phpMyAdmin)
BS端典型的:
CS中比较典型的软件:navicat,mysql workbrach
要解决的问题:允许mysql远程登录
a.先进入数据库选择mysql数据库;
b.执行sql语句:select host,user from user;
FQDN???
c.将其中的一个记录的host值改为“%”,表示可以允许任何地方登录
d.刷新权限表或者重启mysql
刷新权限:mysql>flush privileges;
e.navicat登陆成功
MySql安装与使用(linux)的更多相关文章
- Apache+PHP+Mysql安装手册(Linux)
一. 检查系统环境 1.确认centos版本 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Co ...
- mysql安装配置问题(linux下)
1.安装后使用:mysql -u root -p 无法登录mysql 错误提示:ERROR 1045 (28000): Access denied for user 'root'@'localhost ...
- Mysql安装过程(linux:2.6.18-194.el5,Mysql:)
1.安装[root@RAC2 mysql]# rpm -ivh MySQL-server-5.6.12-2.rhel5.x86_64.rpm Preparing... ################ ...
- 史上最简单的MySQL安装教程之Linux(CentOS6.8)下安装MySQL5.6
一.准备 安装包:Percona-Server-5.6.21-70.0-r688-el6-x86_64-bundle.tar MySQL下载地址:http://www.percona.com/doc/ ...
- linux下MySQL安装及设置
转自:http://www.entage.net/1/viewspace-25420 1. 关于本文 本文将以MySQL 5.0.51为例,以CentOS 5为平台,讲述MySQL数据库的安装和 ...
- Linux下Java开发环境搭建—CentOS下Mysql安装教程
本人学习Linux时使用的是CentOs5.5版本,在该环境中,Mysql的安装方法有很多种,下面我只讲我这次成功了的方法,作为一个记录,供大家参考,同时给自己做一个笔记. MySQL下载 1.进入网 ...
- linux下MySQL安装登录及操作
linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...
- Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)
Centos下安装配置LAMP(Linux+Apache+MySQL+PHP) 关于LAMP的各种知识,还请大家自行百度谷歌,在这里就不详细的介绍了,今天主要是介绍一下在Centos下安装,搭建一 ...
- Linux下MySQL安装和配置
--Linux下MySQL安装和配置 ---------------------------2014/05/18 Linux下MySQL的配置和安装 本文的安装采用 rpm 包安装 1.首先在官网下载 ...
- Linux的软件安装(JDK安装,Mysql安装,Tomcat安装)
1.JDK安装 注意:rpm与软件相关命令 相当于window下的软件助手 管理软件 步骤: 1)查看当前Linux系统是否已经安装java 输入 rpm -qa | grep java ps:博主这 ...
随机推荐
- 解题(GeLeiMa -生成格雷码)
题目描述 在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码. 给定一个整数n,请返回n位的格雷码 ...
- Appium 学习一:环境搭建问题
1.安装Android-sdk http://tools.android-studio.org/index.php/sdk 问题1:下载 android-sdk_r24.4.1-windows.zip ...
- Django 表关系
1.自定义主键字段的创建 AutoFiled(pirmary_key=True) # 一般不会自定义2.order_by asc desc 1. 表关系的创建- OneToOne student = ...
- oracle 表空间创建和删除
oracle数据库:数据库对象以及表数据都存储在表空间中,创建用户时可以指定对应的表空间.这样用户可以在各自的表空间中操作数据,互不干扰. 1. 表空间创建 若不清楚表空间对应文件的路径,可以登录系统 ...
- Eclipse 创建Android 模拟器失败:no cpu/abi system image available for this target
(从网上搜了一个使用Android 4.4 API 20编译的图片) 这是因为SDK中没有模拟器使用的操作系统镜像. 如果项目使用API 19编译,则SDK中的system-images文件夹下,需要 ...
- 记录一次Centos磁盘空间占满的解决办法(转)
原文地址:https://blog.csdn.net/everything1209/article/details/70209157 解决前 磁盘使用情况: 第二块磁盘使用率达到97% [root@f ...
- 【转载】SQL Server - 使用 Merge 语句实现表数据之间的对比同步
原文地址:SQL Server - 使用 Merge 语句实现表数据之间的对比同步 表数据之间的同步有很多种实现方式,比如删除然后重新 INSERT,或者写一些其它的分支条件判断再加以 INSERT ...
- SpringMVC中的Interceptor拦截器及与Filter区别
SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理.比如通过它来进行权限验证,或者是来判断用户是否登陆,或者是像12306 那 ...
- Python开发——文件操作
文件的读取 http://www.cnblogs.com/linhaifeng/articles/5984922.html
- django by example 第四章 dashboard处html无法渲染问题
描述: 实现django by example 代码时,第四章 dashboard处html无法渲染问题. 此时报错,NoReverseMatch at /account/login/, Error ...