Linux 基础知识 之 MySQL数据库

一、mysql数据库简介

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。

MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。

数据库是一个高级的excel表格软件。

二、搭建数据库环境


1.安装数据库软件yum install mariadb-server -y


2.systemctl start mariadb  开启数据库软件

打开软件之后可以进入数据库列出库
编辑mysql -uroot

3.安全初始化的配置

mysql_secure_installation 进行系统初始化

  • 初始化的myaql数据库管理员并没有任何密码,按回车进行下一步
  • 设置root用户的密码
  • 为了安全剩下的都选y

4.查看数据库在网络中对外的接口

编辑netstat -antlupe | grep mysql
 
编辑配置文件关闭接口vim /etc/my.cnf


写入skip-networking=1


重新启动服务 systemctl restart mariadb


netstat -antlupe | grep mysql查看网络接口(接口关闭)

5.用户登陆

三、数据库的管理

mysql -uroot -p 该命令进入
1.SHOW DATABASES; 列出数据库

2.CREATE DATABASE westos; 自己建立库(westos)


3.USE westos;  进入westos库
4.SHOW TABLES;    查看表

5.建立linux表

CREATE TABLE linux (
    -> username varchar(10) not null,
    -> password varchar(50) not null
    -> );

6.DESC linux;   查看表结构

7.插入数据到linux表中,并查询在linux表中的所有字段

INSERT INTO linux VALUES ('lee','123');插入数据到linux表中

SELECT * FROM linux; 查询所有字段在linux表中

INSERT INTO linux VALUES ('westos','123');
SELECT * FROM linux;

8.查询linux表中username字段

9.列出表SHOW TABLES;

10.修改表的名字ALTER TABLE linux RENAME userdate;

ALTER TABLE userdate RENAME linux;  将表的名字改为linux

11.SELECT * FROM linux;查看linux表



12.将age属性添加到linux表的最后ALTER TABLE linux ADD age varchar(4);

13.删除表中的age属性ALTER TABLE linux DROP age;

14.将age属性添加到指定位置(username后面)

ALTER TABLE linux ADD age varchar(4) AFTER username;

15.修改表中age属性的值(全部修改)

UPDATE linux SET age='20';

16.修改表中满足条件的属性值

UPDATE linux SET age='18'WHERE username='westos' ;

17.删除数据列表及库

删除表中满足条件的某一行

DELETE FROM linux WHERE username='westos';

删除表DROP TABLE linux;

删除库

四、用户授权

1.创建一个库,用于后续测试CREATE DATABASE westos;

2.创建数据库用户lee ,登陆密码lee,并查看数据库中的所有用户

SELECT User,Host FROM mysql.user;

CREATE USER lee@localhost identified by 'lee';

3.用创建的数据库用户登录(此时没有库信息)

4.显示某个用户对数据库所有的权限(这里指lee用户)

SHOW GRANTS FOR lee@localhost;

5.对某个用户授予固定的权限GRANT SELECT on westos.* TO lee@localhost;

测试:可以看到westos库

进入库后不能创建表

6.对lee用户添加创建表的权限GRANT CREATE on westos.* TO lee@localhost;

测试:创建表

7. 对lee用户添加删除表信息的权限GRANT DELETE on westos.* TO lee@localhost;

8.对lee用户添加删除表的权限GRANT DROP on westos.* TO lee@localhost;

清除授权

撤销用户的固定权限
REVOKE DELETE on westos.* FROM lee@localhost;

lee用户没有删除表信息的权限

清除用户

DROP USER lee@localhost;

五、数据库的备份与恢复

1.备份所有数据库(包括框架和内容)
[root@shareserver ~]# mysqldump -uroot -pwestos --all-databases > /westos/alldate.sql

2.备份框架
[root@shareserver ~]# mysqldump -uroot -pwestos --all-databases --no-data > /westos/allshuju.sql

3.备份指定数据库到指定位置
[root@shareserver ~]# mysqldump -uroot -pwestos westos > /westos/westos.sql

恢复:

删除数据库
[root@shareserver ~]# mysql -uroot -pwestos -e "DROP DATABASE westos;"
[root@shareserver ~]# mysql -uroot -pwestos -e "SHOW DATABASES;"  查看 westos库不存在

因为数据库中已经没有westos这个数据库了,所以恢复的时候会报错
mysql -uroot -pwestos westos < /westos/westos.sql

方法一:先创建一个库再恢复

方法二:

编辑vim /westos/westos.sql

写入CREATE DATABASE westos;
USE westos;

[root@shareserver ~]# mysql -uroot -pwestos < /westos/westos.sql
[root@shareserver ~]# mysql -uroot -pwestos -e "SHOW DATABASES;"

六、数据库密码管理

更改数据库密码(密码知道)

[root@shareserver ~]# mysqladmin -uroot -pwestos password lee


当密码忘记时:

1.systemctl stop mariadb 关闭数据库

2.mysqld_safe --skip-grant-tables & 跳过授权表直接登陆数据库并打入后台

3.编辑mysql 不用密码就可以登陆数据库

4.SELECT User,Password FROM mysql.user;查看用户及密码信息

5.修改数据库超级用户密码,密码是以密文显示

6.查看mysql的所有进程,并结束掉
执行ps aux | grep mysql 查看 

7.打开数据库

8.密码修改成功(用因密码登陆)

七、安装phpmyadmin 数据库图形管理

在虚拟机server中进行(我的数据库主机)
1.[root@shareserver ~]# yum install httpd -y安装http


[root@shareserver ~]# cd /var/www/html
[root@shareserver html]# systemctl start httpd 开启服务

在网页上测试:

2.下载适合自己主机版本的phpMyAdmin

这里已经从老师主机下载好了,传输到测试端的/var/www/html目录下


[root@shareserver html]# tar jxf phpMyAdmin-2.11.3-all-languages.tar.bz2 解压

[root@shareserver html]# mv phpMyAdmin-2.11.3-all-languages/ mysqladmin 给解压的文件重命名

3.[root@shareserver html]# yum install php php-mysql -y 安装php 和 php-mysql 软件


4.进入mysqladmin目录下,根据模板,创建config.inc.php

[root@shareserver html]# cd mysqladmin/ 
[root@shareserver mysqladmin]# cp config.sample.inc.php config.inc.php


[root@shareserver mysqladmin]# less Documentation.txt  查看

[root@shareserver mysqladmin]# vim config.inc.php 编辑该文件

[root@shareserver mysqladmin]# systemctl restart httpd重新启动httpd 服务

测试:
在真机网页编辑
http://172.25.254.103/mysqladmin
进入数据库图形管理界面

有时候界面出不来是因为缓存的原因
清除缓存的方法:ctrl+shift+delete

以root用户身份输入密码登录数据库

创建数据库

在数据库中新建表

在表中添加属性

插入相应的属性值

验证:

猜你喜欢

转载自blog.csdn.net/excellent_L/article/details/84592259