一、数据库安装及初始化
1)安装mariadb数据库管理系统
yum install mariadb-server.x86_64 -y
systemctl start mariadb
2)查看数据库网络接口
3)编辑主配置文件,关闭网络接口重启服务
此步骤为保护数据库安全,开启后就不能远程访问数据库
4)数据库初始安全配置,命令mysql_secure_installation
输入当前密码-->未设置直接回车-->设定新密码-->删除匿名用户-->禁止远程登陆-->删除test数据库-->刷新授权表-->退出
5)mysql -uroot -p 输入密码登陆数据库(-p后可以直接加密码,这样密码以明文形式显现不安全,可以进去后再输)
二、基本sql语句
说明:数据库语言不区分大小写,但是规范用大写;数据库语言每条命令以;结束
1)查看
SHOW DATABASES; ##查看库
USE mysql; ##进入库
SHOW TABLES; ##查看所有表
SELECT * FROM user ##查看表中全部内容
DESC linux; ##查看表结构
2)库和表的建立
CREATE DATABASE westos; ##建立库
CREATE TABLE linux( ##建立表
sername varchar(10) not null,
password varchar(10) not null); ##字段名称字符长度字符类型条目不能为空
INSERT INTO linux VALUES ('lee','123'); ##插入
SELECT * FROM linux; ##查看表linux所有字段
注意:这样密码是以明文显示,需要密文显示可执行insert into linux values ('user1',password('passwd1'));
3)
更改
ALTER TABLE Linux RENAME userdate; ##改表名
ALTER TABLE linux ADD age varchar(4); ##默认加字段到表末
ALTER TABLE linux ADD age varchar(4) AFTER username; ##自定义添加字段位置
UPDATE linux SET age='18' WHERE username='lee';
##改字段内容(不加WHERE限定则默认此字段所有值均变为18)
4)库和表的删除
ALTER TABLE linux DROP age; ##删列
DELETE FROM linux WHERE username='lee'; ##删行
DROP TABLE linux; ##删表
DROP DATABASE westos; ##删库
5)用户授权
SELECT User,Host FROM mysql.user; ##查看授权用户
CREATE USER lee@localhost identified by 'lee'; ##创建本地数据库用户认证密码lee
mysql -ulee -plee ##用户密码登陆数据库
SHOW GRANTS FOR lee@localhost; ##查看lee权限
GRANT SELECT,DROP,INSERT,DELETE ON westos.* TO test@localhost; ##westos库所有对lee授权;
FLUSH PRIVILEGES; ##刷新
注意:test用户没有更改权限被拒绝
添加相应权限后操作成功,注意:所有权限设定均是管理员操作,非test用户,此用户仅有对westos库的某些权限,没有授权权限!
REVOKE INSERT ON westos.* FROM test@localhost; ##撤权
DROP USER test@localhost ##删除授权用户
SELECT User,Host FROM mysql.user;
6)数据库备份与恢复
mysqldump -uroot -predhat --all-databases > /mnt/data.sql ##备份所有表到data.sql里
mysqldump -uroot -predhat --all-databases --no-data ##备份所有表但不包含表中数据(仅格式)
mysqldump -uroot -predhat westos > /mnt/westos.sql ##备份westos库,并将数据保存到westos.sql文件中
mysqldump -uroot -predhat -e "DROP DATABASE westos;" ##删库
恢复方法一:
mysqldump -uroot -predhat -e "CREATE DATABASE westos;" ##建立westos库,还原时要先建立此库
mysql -uroot -predhat -e "CREATE DATABASE westos;"
mysql -uroot -predhat westos < /mnt/westos.sql
恢复方法二:
vim /mnt/westos.sql ##编辑此文件加入建立westos库命令
CREATE DATABASE westos;
USE westos; (21行)
mysql -uroot -predhat < /mnt/westos.sql
7)修改数据库密码
systemctl stop mariadb 关服务
关闭授权表
mysqld_safe --skip-grant-table & ##安全模式里跳过授权表
mysql 进入数据库
SELECT User,Password FROM mysql.user; 查看用户密码
Password='redhat' 改密码,直接以明文显示密码
update mysql.user set Password=password('redhat') where User='root'; 加密密码
退出
pa aux | grep mysql 查看服务进程
kill -9 id 关闭所有运行进程
systemctl start mariadb 重启测试
三、web方式访问管理数据库
1.下载phpmyadmin
phpMyAdmin-2.11.3-all-languages.tar.bz2
2.yum install php php-mysql -y
3.systemctl restart httpd
4. tar jxf phpMyAdmin-2.11.3-all-languages.tar.bz2 ------- > /var/www/html
5.mv phpMyAdmin-2.11.3-all-languages mysqladmin ##重命名
6.cd mysqladmin
7.cp config.sample.inc.php config.inc.php ##复制模板
8.vim config.inc.php
$cfg['blowfish_secret'] = 'ba17c1ec07d65003'; ##这串数字从文件Documentation.txt得到
测试:http://172.25.254.143/mysqladmin
将Documentation.txt里value值填入config.inc.php文件中
测试:http://172.25.254.157/mysqladmin