linux:mysql

数据库介绍

mysql与php是黄金搭档(LAMPLNMP

常见的数据库

Oracle、Sql server、Access、Mariadb、Ds2等

安装

安装前确保计算机时间准确

源码包安装

优点:开源、编译安装

缺点:安装步骤多,易出错、编译时间长

使用编译安装方式,需要提前安装 ncurses (常用终端库)

下载:链接

1、将软件包传递到服务器上 “/usr/local/src”

linux:mysql_第1张图片

扩展:解包


 linux:mysql_第2张图片

2、解压源码包

tar -zxvf ncurses-6.1.tar.gz 

 3、切换到需要安装的源码包

linux:mysql_第3张图片

配置(config、configure、bootstrap)  ——> 编译(make、bootstrapd)  ——>安装(make install、bootstrapd install)

(1)、配置

主要指定软件的安装目录、需要的依赖在什么地方、指定不需要的依赖、配置文件的路径、通用数据存储位置等

./configure --prefix=/usr/local/ncurses

linux:mysql_第4张图片

(2)、编译

make

linux:mysql_第5张图片

(3)、安装

make install

linux:mysql_第6张图片

二进制包安装

优点:管理简单

缺点:经过编译、不再刻意看到源代码

回顾rpm指令:

rpm -qa | grep 关键字

rpm -e 关键字  【-nodeps】:忽略查询

rpm -ivh 完整名称

rpm -Uvh  完整名称

rpm  -qf  文件路径   :查询指定文件属于哪个包

举例:使用rpm安装lynx(一个纯命令的浏览器)

1、由于光盘中就有该包,所以查看光盘的挂载情况

linux:mysql_第7张图片

2、安装

3、测试

linux:mysql_第8张图片 

yum安装

优点:安装简单、快捷

缺点:完全丧失自定义性

yum常见命令:

yum list :列出当前已经安装和可以安装的软件包

yum 【-y】 install 软件包  :安装软件包 (-y表示允许不再确认)

yum  【-y】 update  【包名】:更新指定的包,不指定则更新全部

yum【-y】 remove  包名:卸载指定的包

举例:卸载火狐浏览器

安装mysql:

yum install mysql-server    :安装mysql服务器端

linux:mysql_第9张图片

mysql初始化

service mysqld start   :开启mysql服务

查看默认端口号: netstat -tnlp

初始化:mysql_secure_installation

linux:mysql_第10张图片

安装完成:

linux:mysql_第11张图片

基本操作

服务管理

service mysqld start / stop / restart   :开始 / 停止 / 重启

进入和退出

进入:mysql -u 用户名 -p

退出:exit

默认目录

数据库存储目录:/var/lib/mysql

配置文件:/etc/my.cnf

库操作

大小写均可

show database;  :显示当前所有数据库

create database   数据库名;:创建数据库

drop  database   数据库名;:删除数据库

use 库名;  :切换数据库

表操作

show tables;  :显示当前数据库中所有的表名

create table  表名    :创建一个表

{ 

  列名称1 数据类型  【not null  auto_increment】

  ................

  primary key(主键)

};

常见数据类型:int、char、varchar(不定长字符)

主键:主键不能重复

desc 表名;   :描述一个数据表(表结构)

drop  table  【if exists】表名;   :删除一个数据表

举例:在test数据库中创建sh表:

linux:mysql_第12张图片

增加记录

语法1:insert into 表名 values(值1,值2,.........);

语法2:insert into 表名 (列1,列2,.........)values(值1,值2,.........);

更新记录

update 表名 set  列名1 = 新值1,..... where 列名 = 某值;

linux:mysql_第13张图片

查询记录

select 列名称 from 表名称  where 条件;

select * from 表名  where 条件;

linux:mysql_第14张图片

删除记录

delete from 表名 where 列名 = 值;

linux:mysql_第15张图片

备份

全部备份:mysqldump -uroot -p密码 -A > 备份文件路径

指定库备份:mysqldump -uroot -p密码  库名  > 备份文件路径

多个库备份:mysqldump -uroot -p密码  --databases  库名1 库名2....  > 备份文件路径

案例:每分钟自动备份一次test库

编写shell脚本:

linux:mysql_第16张图片

创建一个计划任务:

完成:

还原

linux:mysql_第17张图片

linux:mysql_第18张图片

举例:还原表sh

1、删除表sh

linux:mysql_第19张图片

2、恢复表

linux:mysql_第20张图片

远程管理

1、B/S管理工具:PMA(phpmyadmin)使用链接

2、C/S工具:Navicat 

常见错误

mysql中出现乱码如何处理?

设置mysql链接字符集:set names utf8;      【三码一致,服务器端+传输过程中+客户端

在使用yum安装软件时,遇到:Another app is currently holding the yum lock; waiting for it to exit...

可以通过强制关掉yum进程:rm -f /var/run/yum.pid

初次远程连接时,报错

1、先进入数据库选择mysql数据库

2、执行:select host,user from user;

linux:mysql_第21张图片

3、将其中一个记录的host值改为“%”

linux:mysql_第22张图片

4、权限设置

如果想root用户使用password从任何主机连接到mysql服务器的话:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

5、刷新权限表或重启mysql服务

刷新权限表:flush privileges;

 6、测试

linux:mysql_第23张图片

你可能感兴趣的:(linux:mysql)