- 安装
yum search mariadb 查找数据库安装包
yum install mariadb-server.x86_64 -y 安装数据库服务
systemctl start mariadb 重启服务
systemctl enable mariadb 使开机自启 - 安全初始化
默认情况下,数据库的网络接口是打开状态。
为保证安全,需要关闭此接口。
- 关闭接口
vim /etc/my.cnf 主配置文件
6 skip-networking=1 设置检测时略过mysql,使监听端口无法监测到mysql的端口
systemctl restart mariadb 重启服务
netstat -antlpue | grep mysql 监听端口,无法监测到mysql端口
- 加密
mysql_secure_installation 安全初始化过程,设置mysql登陆
mysql -uroot -p 登陆数据库,回车键,输入密码
mysql_secure_installation 设置mysql登陆
Enter current password for root (enter for none): 是否为root设置登陆密码
Set root password? [Y/n] y 设置登陆密码
New password:
Re-enter new password:
Password updated successfully!
Remove anonymous users? [Y/n] y 禁止匿名用户登陆
… Success!
Disallow root login remotely? [Y/n] y ## 禁止远程登陆
… Success!
Remove test database and access to it? [Y/n] y 禁止使用并进行数据测试
- Dropping test database…
… Success! - Removing privileges on test database…
… Success!
Reload privilege tables now? [Y/n] y 更新数据库
… Success!
mysql配置文件
/etc/my.cnf 主配置文件
/etc/my.cnf.d/server.cnf 子配置文件
-
mysql使用命令
在数据库中输入命令要以;结尾不然不会执行命令
mysql 无密码登陆数据库
mysql -uroot -p root用户登陆数据库
use mysql 进入mysql数据库
show databases 显示databases中所有的库,任何命令必须以“;”结尾
show tables 显示当前数据库的所有表
select * from user 显示所有字段的数据(字段指列)
select Host,User from user 显示user表中Host和User字段的数据
select Host,User from user where Host=’::1’显示user表中Host=’::1’的Host和User字段的数据
desc user 显示当前数据库的所有字段,查看user表的数据结构
quit 退出数据库
-
数据库的管理
- 创建数据库
create database westos; 创建westos数据库
use westos; 使用westos数据库
create table linux( 在westos数据库创建表,字段包括username,password
-> username varchar(15) not null, 指定username的字符长度不可超过15个,字符类型为varchar,并且不许为空
-> password varchar(15) not null
-> );
- 插入
insert into linux values (‘hao’,‘123’); 在linux表中插入值为username = hao,password = 123在linux列表中插入用户hao,hao1,密码分别为123,456
- 更改
update linux set password=password(‘111’) where username=‘hao’; 更新linux表中hao的密码为111
alter table linux rename messages; 表linux重命名为messages
altertable table linux add class varchar(10); 添加class字段到linux表中
altertable table linux add age varchar(10) after password; 在password字段后添加age字段到linux表中
alter table linux drop age; 删除linux表中的age字段
- 删除
delete from linux where username=‘lee1’ and password=‘789’; 删除linux表中 username='lee1’和 password='789’对应表项
delete from linux; 删除linux表中所有字段内(表格依旧存在)
drop table linux; 删除linux表
drop database westos; 删除westos数据库
- 用户授权
mysql -ulee -p lee用户登陆数据库
CREATE USER lee@localhost identified by ‘lee’; 建立本地用户,密码lee,@ip远程用户
SELECT User FROM mysql.user; 查看建立的用户
SELECT User,Host FROM mysql.user; 查看建立的用户及主机
针对所有库所有表授权用户select功能
GRANT CREATE ON . TO lee@localhost; 授权用户create功能
SHOW GRANTS FOR lee@localhost; 查看用户lee的授权
CREATE DATABASE westos; 用户可建立数据库
授权用户create功能
GRANT CREATE ON . TO lee@localhost; 授权用户create功能
SHOW GRANTS FOR lee@localhost; 查看用户lee的授权
CREATE DATABASE westos; 用户可建立数据库
撤销用户create权利
REVOKE CREATE ON . FROM lee@localhost; 撤销用户创建数据库的授权
SHOW GRANTS FOR lee@localhost; 查看本地用户lee的权力
6.数据库备份
mysqldump -uroot -p123 westos > /mnt/westos.sql ##数据库westos备份到/mnt/westos.sql
mysqldump -uroot -p123 westos --no-data ##备份westos数据库(有框架无数据)
mysqldump -uroot -p123 --all-database ##备份所有数据库
mysqldump -uroot -p123 --all-database --no-data ##备份所有数据库(有框架无数据)
恢复方式1
mysql -uroot -p123 -e “CREATE DATABASE westos;” ##非交互界面
mysql -uroot -p123 westos < /mnt/westos.sql ##备份恢复
恢复方式2
vim /mnt/westos.sql
CREATE DATABASE westos;
USE westos;
mysql -uroot -p123 < /mnt/westos.sql
- 数据库密码更改
- 更改普通用户密码
UPDATE mysql.user set Password=‘hello’ WHERE User=‘lee’; 修改密码(显示明文)
UPDATE mysql.user set Password=password(‘hello’) WHERE User=‘lee’; 修改密码(显示密文)
- 更改超级用户密码
[root@apache ~]# systemctl stop mariadb 关闭mariadb服务
[root@apache ~]# mysqld_safe --skip-grant-tables & 开启mysql登陆接口并忽略授权表,&为打入后台,也可用‘Ctrl+Z‘
[root@apache ~]# mysql 不需要密码直接登陆
update mysql.user set Password=password(‘123’) where User=‘root’; 更新,更改密码
exit
[root@apache ~]# ps aux | grep mysql 过滤mysql的所有进程并用kill -9结束这些进程
[root@apache ~]# systemctl start mariadb
- 安装phpMyAdmin数据库图形管理
下载phpMyAdmin-3.4.0-all-language到/var/www/html并解压、重命名
[root@localhost mysqladmin]# cp config.sample.inc.php config.inc.php
[root@localhost mysqladmin]# vim config.inc.php
17 $cfg[‘blowfish_secret’] = ‘ba17clec07d65003’; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
安装php-mysql插件
[root@localhost mysqladmin]# yum install php-mysql.x86_64
systemctl restart httpd 重启服务
1、下载phpMyAdmin-3.4.0-all-language
2、yum install php-mysql.x86_64 -y
3、systemctl restart httpd
4、cp phpMyAdmin-3.4.0-all-languages.tar.bz2 /var/www/html
5、tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2
6、mv phpMyAdmin-3.4.0-all-languages mysqladmin
7、cd mysqladmin
8、cp config.sample.inc.php config.inc.php
9、vim config.inc.php
$cfg[‘blowfish_secret’]=‘ba17clec07d65003’