一、mariadb的安装及安全初始化
1、安装:
dnf install mariadb
cd
dnf install -y mariadb-server.x86_64
systemctl enable --now mariadb ##开启数据库服务
mysql ##可直接登陆
2、设置用户密码
mysql_secure_installation ##设定登陆用户及登陆密码
mysql -u root -p ##输入密码即可登陆
3、设置端口隐藏
netstat -antlupe | grep mysql ##可以查看到端口
rpm -qc mariadb-server ##查看mariadb系统路径
vim /etc/my.cnf.d/mariadb.server.cnf ##设置系统文件 插入'skip-networking=1',即可隐藏端口
systemctl restart mariadb
netstat -antlupe | grep mysql ##再次查看端口,端口被隐藏
二、sql语句中的查询、新建、更改及删除
1、sql语句中的查询
mysql -u root -p
MariaDB [(none)]> show databases; ##显示 库 名称
MariaDB [(none)]> use mysql; ##进入 mysql库
MariaDB [mysql]> show tables; ##显示库中所有的 表
MariaDB [mysql]> select * from user; ##查询user表里所有的数据
MariaDB [mysql]> select User,Host from mysql.user; ##查询指定字段
MariaDB [mysql]> select User,Host from mysql.user where User='root';
MariaDB [mysql]> select User,Host from mysql.user where User='root and ‘’;
2、sql语句中的新建
MariaDB [(none)]> create database rtt; ##建立库
MariaDB [(none)]> use rtt; ##进入 库
MariaDB [rtt]> create table zy ( ##建立表 及表字段
-> username varchar (10) not null, ##字节长度 最长为10 且不为空
-> password varchar (30) not null
-> );
MariaDB [rtt]> desc zy; ##查看表结构
MariaDB [rtt]> insert into zy values ('user1','123'); ##向zy表中插入数据
MariaDB [rtt]> select * from zy;
MariaDB [rtt]> insert into zy values ('user2','123'),('user3','123');
MariaDB [rtt]> select * from zy;
3、sql语句中的更改
1、库名的更改
方式1:
cd /var/lib/mysql/
mv rtt/ bai ##因为库相当于一个文件(一般不会更改库名)
systemctl restart mariadb.service
mysql -uroot -p
show databases;
2、表名的更改
mysql -uroot -p
MariaDB [rtt]> alter table rtt rename redhat;
3、更改表结构
MariaDB [rtt]> desc zy; ##查看表结构
MariaDB [rtt]> alter table zy add age int (3); ##添加表结构
MariaDB [rtt]> alter table zy drop age; ##删除某一列
MariaDB [rtt]> desc zy;
MariaDB [rtt]> alter table zy add age int (3) after username; ##指定添加字段位置
MariaDB [rtt]> desc zy;
4、更改表中数据
MariaDB [rtt]> update zy set age='4'; ##更改整个表中的 age为4
MariaDB [rtt]> select * from zy;
MariaDB [rtt]> update zy set age='20' where username='user1'; ##指定库中数据进行更改
MariaDB [rtt]> select * from zy;
4、sql语句中的删除
MariaDB [(none)]> select * from rtt.zy;
MariaDB [(none)]> use rtt;
ariaDB [rtt]> delete from zy where age='20'; ##删除某一行
MariaDB [rtt]> select * from rtt.zy;
MariaDB [rtt]> alter table zy drop age; ##删除某一列
MariaDB [rtt]> select * from rtt.zy;
MariaDB [rtt]> drop table zy;
ariaDB [rtt]> drop database rtt;
三、数据库的密码破解
1、知道
密码时,更改密码
mysqladmin -uroot -p password rtt ## -p 指定密码
2、不知道
密码时,更改密码
systemctl stop mariadb ##关闭数据库
mysqld_safe --skip-grant-tables & ## grant-tables 跳过授权 不开启认证 & 打入后台
mysql -uroot
MariaDB [(none)]> select * from mysql.user;
MariaDB [(none)]> update mysql.user set authentication_string=password('westos') where User='root'; ## 加入password() 隐藏密码
ps aux | grep mysql ##查看进程
kill -9 32860
kill -9 32954
systemctl start mariadb
mysql -uroot -pwestos
四、数据库的备份及恢复
1、数据库的备份
mysqldump -uroot -p rtt ##备份 rtt
mysqldump -uroot -p rtt > /mnt/rtt.sql ##备份 rtt并导入rtt.sql
mysqldump -uroot -p --all-databases ##备份所有库
mysqldump -uroot -p --all-databases --no-data ##备份所有库结构(不备份数据)
2、数据库的恢复
方式一
:
mysql -uroot -p -e "drop database rtt;" ##删除rtt
mysql -uroot -p -e "show databases;"
mysql -uroot -p -e "create database rtt;" ## -e 表示不进入数据库内进行操作
mysql -uroot -pwestos rtt < /mnt/rtt.sql ##还原
mysql -uroot -p -e "show databases;"
方式二
:
mysql -uroot -p -e "drop database rtt;"
vim /mnt/rtt.sql
添加:(建立rtt 使用rtt)
mysql -uroot -pwestos < /mnt/rtt.sql
mysql -uroot -p
五、数据库中的用户授权
建立网络用户 及本地用户
create user westos@'%' identified by 'westos'; ##建立westos用户 只可在本机登陆
create user lee@localhost identified by 'westos'; ##建立lee用户 本机 远程都可登陆
vim /etc/my.cnf.d/mariadb-server.cnf
#skip-networking=1 ##关闭网络功能
systemctl restart mariadb
systemctl stop firework
授权
mysql -uroot -pwestos
grant select on westos.* to lee@localhost; ##授权lee用户可以看westos库
show grants for lee@localhost;
取消授权
mysql -uroot --pwestos
revoke select on westos.* from lee@localhost; ##删除授权
mysql -ulee -pwestos ##登陆lee用户 查看是否生效
show databases;
六、数据库的web插件
插件下载
官网:http://www.phpmyadmin.net/downloads
dnf info mariadb-server ##查看版本号
wget http://phpmyadmin-3.4.0-all-lauguages.tar.bz2
dnf install httpd php -y
systemctl enable --now firewalld
system ctl enable --now httpd
tar jxf phpmyadmin-3.4.0-all-lauguages.tar.bz2 -C /var/www/html
cd /var/www/html
mv phpmyadmin-3.4.0-all-lauguages mysqladmin
cd mysqladmin
ls
less readme ##解释
less Documentation.txt
cp config.sample.inc.php config.inc.php
vim config.inc.php
dnf install php-mysqlnd -y
systemctl restart httpd
php -m ##查看mysql是否加上
即可在网页上进行登陆设置
172.25.254.200/mysqladmin