linux mysql的基本管理

一、数据库的介绍:

什么是数据库
数据库就是个高级的表格软件
常见数据库
Mysql Oracle mongodb db2 sqlite sqlserver …

Mysql (SUN -----> Oracle)
mariadb:MariaDB数据库管理系统是MySQL的一个分支

二、软件基本信息:

mariadb.service启动服务
3306默认端口号
/etc/my.cnf主配置文件
/var/lib/mysql数据目录,当需要重新安装mariadb时需要清理此目录或备份

三:使用

1.安装

  dnf search mariadb
    2  dnf install mariadb-server.x86_64
    3  mysql
    4  systemctl enable --now mariadb
    5  mysql
   

 2.数据库的安全初始化

1.关闭开放端口

vim /etc/my.cnf.d/mariadb-server.cnf

修改后  systemctl restart mariadb.service

skip-networking=1

 

  效果查看:输入下命令没有结果

netstat -antlupe |grep mysql

 2.执行安全初始化脚本

(1)设置超级用户密码

 (2)禁止匿名登陆,禁止超级用户远程登录

(3) 去掉测试表,重新加载数据库

 四:数据库的基本查看

1.查看mysql库的表

SHOW DATABASES;
USE mysql;
 SHOW TABLES;

 2.指定信息查询

SELECT User,Password FROM user;

 2.新建数据库和表

CREATE DATABASE test;
use test;

CREATE TABLE testable(
    -> username varchar(6) not null,
    -> passwd   varchar(6) not null);

DESC testable; 显示表结构

 3.向数据库中插入数据

INSERT INTO testable VALUES('user1','123');
SELECT * FROM  testable; 用于查看表中内容

 

 4.刷新数据库

FLUSH PRIVILEGES;

5.表名称更改

ALTER TABLE testable RENAME cuiyingying;  表名称改为cuiyingying

 6.新增列&删除列

ALTER TABLE cuiyingying ADD age varchar(4) AFTER username;
在姓名后新增年龄选项,若没有after,默认放在最后

ALTER TABLE cuiyingying DROP age;
删掉age属性

 7.指定对象的内容修改

UPDATE cuiyingying  SET passwd='555' WHERE username='user2';

 user2的密码改为555

 8.删除

DROP TABLE cuiyingying;

 DROP DATABASE test;

DELETE FROM cuiyingying WHERE username='user2' AND age='5';指定行删除

五.数据库密码管理

1.旧密码已知

mysqladmin -uroot -p password  lee

 2.旧密码不知道


systemctl stop mariadb    关闭服务
mysqld_safe --skip-grant-tables &    跳过认证环节
UPDATE mysql.user set Password=password(‘westos’) WHERE User=‘root’;  

UPDATE mysql.user set authentication_string=password(‘westos’) WHERE User=‘root’;  


kill -9 id  杀死mysql的所有进程 :关掉跳过认证进程,最后剩下auto mysql一个进程
systemctl start mariadb    重启服务


 

UPDATE mysql.user SET password=passwd'lee' WHERE User='root';
当root用户的密码没有经过任何修改的时候。执行下命令
 UPDATE mysql.user set authentication_string=password(‘westos’) WHERE User=‘root’; 
密码已经被修改过了,又忘了

 ps aux|grep mysql  查询进程的id
   kill -9 11566   关掉跳过认证的所有进程
    kill  -9  11472

 效果查看:

 十、phpmyadmin的安装

wget http://172.25.254.250/software/phpMyAdmin-3.4.0-all-languages.tar.bz2
 dnf install php httpd php-mysqlnd -y
安装好所需的软件

1.把从250下载的软件包解压,放到http根目录下

cp phpMyAdmin-3.4.0-all-languages.tar.bz2  /var/www/html/
    cd /var/www/html/
    ls
  tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2
   ls
   mv phpMyAdmin-3.4.0-all-languages
 mv phpMyAdmin-3.4.0-all-languages/ test

修改配置文件 :

cd test
  ls
    cp config.sample.inc.php config.inc.php
  vim config.inc.php

 $cfg['blowfish_secret']='ba17c1ec07d65003'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

 效果测试:浏览器输入172。25。254。112/test

8.数据库的备份
数据库的备份

mysqldump -uroot -pwestos --all-database 备份所有数据
mysqldump -uroot -pwestos --all-database --no-data  只要数据库结构不要数据

mysqldump -uroot -pwestos mysql > /mnt/mysql.sql  导出到文件
mysqldump -uroot -pwestos --all-databases > /mnt/all.sql
mysqldump -uroot -pwestos --all-databases --no-data > /mnt/all_nodata.sql
mysqldump -uroot -pwestos westostest > /mnt/westostest.sql

 数据库的还原

1.把test数据库备份好并且进入数据库,删掉test数据库

 mysqldump -uroot -pwestos test > /mnt/test.sql
mysql -uroot -p


DROP DATABASE test;

 2.还原

mysql -uroot -pwestos -e "CREATE DATABASE test;"
mysql -uroot -pwestos test < /mnt/test.sql

 或者直接在导出的文件操作

CREATE DATABASE test;
USE test;

mysql -uroot -pwestos  < /mnt/test.sql
不用加数据库名称

9.创建用户与授权

% ##通过远程登陆
@localhost ##只能通过本地登陆

数据库中:
 CREATE USER westos@localhost identified by 'westos';
CREATE USER lee@'%' identified by 'westos';


systemctl restart mariadb.service 
systemctl stop firewalld.service

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值