【2-5】Linux之mysql数据库的基本管理
一、什么是数据库
1.数据库就是个高级的表格软件
2.常见数据库
Mysql
Oracle
mongodb
db2
sqlite
sqlserver
…
3.Mysql(SUN ------> Oracle)
4.mariadb
##mysql数据库
中的一个版本
二、mariadb的安装
需要先配置好软件仓库或主机dnf可上网
dnf install mariadb-server.x86_64 -y
三、软件基本信息
mariadb.service
systemctl enable --now mariadb
3306
/etc/my.cnf.d/mariadb-server.cnf
/var/lib/mysql
四、数据库开启
systemctl enable --now mariadb
enable开机启动,–now 立即启动
mysql
无密码时连接。
[root@node126 yum.repos.d]# mysql -uroot -p..mn
[root@node126 yum.repos.d]# mysql -uroot -p
Enter password:

quit
退出mysql
五、数据库的安全初始化
1.关闭数据库开放端口
vim /etc/my.cnf.d/mariadb-server.cnf
[mysqld]
skip-networking=1
[root@node126 yum.repos.d]# systemctl restart mariadb.service
[root@node126 yum.repos.d]# netstat -antlupe|grep mysql
无反应,说明无连接端口。
2.mysql_secure_installation
初始化
六、数据库的基本管理
1.查看
SHOW DATABASES;
USE mysql;
SHOW TABLES;
SELECT * FROM user;
SELECT Host,User,Password FROM user;
SELECT Host FROM mysql.user WHERE User='root';
2.新建
CREATE DATABASE westos;
CREATE TABLE linux( username varchar(6) not null, password varchar(30) not null );
DESC linux;
查看linux表中的项。
MariaDB [westos]> select * from mysql.user;
select * from mysql.user;
和DESC linux ;
的区别
前者列出了表头中的各具体信息,相当于表格。
后者相当于表头
INSERT INTO linux VALUES('user1','123');
FLUSH PRIVILEGE;
3.更改
ALTER TABLE linux RENAME redhat;
ALTER TABLE linux ADD age varchar(4) AFTER password;
ALTER TABLE linux DROP age;
UPDATE linux SET sex='g' WHERE username='user2';
4.删除
DELETE from redhat where username=‘user2’ and age=‘18’;
DROP TABLE redhat;
DROP DATABASE westos;
七、数据密码管理
1.数据密码更改
mysqladmin -uroot -plee password westos
2.数据库密码破解
systemctl stop mariadb
mysqld_safe --skip-grant-tables &
mysql
UPDATE mysql.user set authentication_string=password('lee') WHERE User='root';
flush privileges;
quit
MariaDB [(none)]> UPDATE mysql.user SET authentication_string=password('..mn') WHERE User='root';
Query OK, 1 row affected (0.002 sec)
Rows matched: 3 Changed: 1 Warnings: 0
ps aux|grep mysql
pkill -9 mysql
systemctl start mariadb
八、用户授权
CREATE USER lee@localhost identified by 'lee';
CREATE USER lee@'%' identified by '%';
MariaDB [(none)]> select user,host,password,authentication_string from mysql.user;
GRANT INSERT,SELECT ON westos.* TO lee@localhost;
SHOW GRANTS for lee@localhost;
REVOKE SELECT ON westos.* FROM lee@localhost;
DROP user lee@localhost;
九、数据库的备份
mysqldump -uroot -p123 --all-database
mysqldump -uroot -p123 --all-database --no-data
mysqldump -uroot -p123 westos
mydqldump -uroot -p123 westos > /mnt/westos.sql
test1:
mysql -uroot -p123 -e “create database westos;”
mysql -uroot -p123 westos< /mnt/westos.sql
test2:
vim /mnt/westos.sql
CREATE DATABASE westos;
USE westos;
mysql -uroot -p123 < /mnt/wesos.sql
十、phpmyadmin的安装
dnf install httpd php php-mysqlnd -y
systemctl enable --now httpd
systemctl stop firewalld
cp phpMyAdmin-3.4.0-all-languages.tar.gz /var/www/html
cd /var/www/html/
tar zxf phpMyAdmin-3.4.0-all-languages.tar.gz
mv phpMyAdmin-3.4.0-all-languages/ mysqladmin
cd mysqladmin
cp config.sample.inc.php config.inc.php
firefox http://192.168.0.12/mysqladmin