mysql数据库

数据库的基本操作
数据库:由表格组成(可以理解为高级excel)(功能:信息的存储)

yum install mariadb-server.x86_64 -y
systemctl start mariadb
mysql(就直接能进入数据库)

安装完不能直接使用,因为数据库没有密码,并且端口裸露在外面,需要做安全初始化
netstat -antlupe | grep mysql(查看端口)




安全初始化:
1)关闭端口
rpm -qc mariadb-server(查看mysql所属文件)




vim /etc/my.cnf(更改通用配置文件)
##
在masql的段里写skip-networking=1(=1 开启)
##
systemctl restart mariadb.service(重启服务)
netstat -antlupe | grep mysql(再次查看,没有显示端口)




2)改密码

mysql_secure_installation
给root密码
Remove anonymous users?关闭匿名用户连接
Disallow root login remotely?关闭远程root用户连接
Remove test database and access to it? 移除测试数据库
Reload privilege tables now?重新加载数据库配置
##一顿操作之后就设置好密码了##(以上全选yes)
mysql -uroot -p(用这样的方式登陆,也可以在-p后面直接加密码,但是是明文的所以一般不这么操作)

进来之后,用大写,显得比较专业,必须分号结尾,而且这里Tab键不能补齐。

在数据库中的一些指令
show databases;                显示数据库
use mysql;                进入数据库
show tables;                显示数据库中的表
desc user;                查看user表的数据结构
flush privileges;            刷新数据库信息
select host,user,password from user;    查询user表中的host,user,password字段

应用一下
CREATE DATABASE westos;            创建westos数据库
SHOW DATABASES;             查看数据库

USE westos;                 进入westos数据库



   

create table linux(            创建表,username,password字段
username varchar(15) not null,        (not null:不能为空值,最大输入字符为15个汉字)
password varchar(15) not null
 );
SHOW TABLES;                显示数据库中的表
DESC linux;                查看linux表中的数据结构



INSERT INTO linux VALUES ('lee','123'); 在linux表中加入两个字段对应的数据分别为lee和123

INSERT INTO linux VALUES ('lee1','456');同样的加入数据了lee1和456
SELECT username,password FROM linux;    查询在linux表中的指定字段
SELECT * FROM linux;            查询在linux表中的所有字段



更改:

ALTER TABLE linux ADD class varchar(20); 在linux表中加入class字段




ALTER TABLE linux ADD age varchar(20) AFTER password; 在password后加入age字段




ALTER TABLE linux DROP class;        删除class字段




UPDATE linux SET password='789' WHERE username='lee1'; 给linux表中lee1的那行的password中的数据改成789




ALTER TABLE linux RENAME redhat;    改表的名字




删除:

DELETE FROM linux WHERE username='lee1'AND password='789';删除数据lee1(为了防止重名,所以又加了一个789来限定)




DROP TABLE redhat;            删除redhat表




DROP DATABASE westos;            删除linux库



用户授权

mysql -uroot -p                     先以root身份进入mysql
CREATE USER lee@'localhost' identified by 'westos';    创建一个名字叫lee的用户,密码为westos
USE mysql;

SELECT User,Password FROM user;                查看建立的用户信息(有lee)




mysql -ulee -pwestos                    
SHOW DATABASES;                        查看数据库,无法查看




切换到超级用户

GRANT SELECT,INSERT on westos.* TO lee@localhost;    给lee用户在访问westos库下的所有表时都有访问权限(SELECT)和插入权限(INSERT)




SHOW GRANTS FOR lee@localhost;                查看lee权限

REVOKE INSERT ON westos.* FROM lee@localhost;        删除lee在westos库下的所有表的插入权限
切换到lee,果然插入不了。



忘记本地用户密码:

select User,Password from user;                查看建立的用户信息
update mysql.user set Password=password('hello') where User='lee';    更改密码,password()为密文显示,否则查看时(select User,Password from user;)会显示设置的密码明文
systemctl restart mariadb.service
成功





忘记超级用户密码:

systemctl stop mariadb(关闭数据库)
mysql(进不去)




需要启动mysql安全模式

mysqld_safe --skip-grant-tables &//启动mysql时不开启授权表
这样就进入安全模式了
mysql(进去了)
update mysql.user set Password=password('redhat') where User='root';(给root一个新密码redhat)

ps aux | grep mysql(查看mysql的进程id)




kill -9 2285
kill -9 2440(结束所有mysql进程)
ps aux | grep mysql(看一眼,没有和mysql相关的进程了)




systemctl start mariadb

然后用root登陆,成功



备份一个库:

先建立一个库



然后用到备份命令

mysqldump -uroot -predhat westos > /mnt/westos.sql ##把westos库备份到/mnt/westos.sql中
mysqldump -uroot -predhat westos --no-data > /mnt/westos.sql ##把westos库的格式备份(不带数据)
mysqldump -uroot -predhat --all-database > /mnt/westos.sql ##把所有库备份
mysqldump -uroot -predhat --all-database --no-data > /mnt/westos.sql ##把所有的库只备份格式

PS:保存在文件中,规范化--->后缀写为.sql(后缀什么都无所谓)

然后删掉原来的库
DROP DATABASE westos;
恢复方式1
mysql -uroot -predhat -e "CREATE DATABASE westos;"
mysql -uroot -predhat westos < /mnt/westos.sql
恢复方式2
vim /mnt/westos.sql()
##
CREATE DATABASE westos;
USE westos;
##




mysql -uroot -predhat < /mnt/westos.sql(导入数据库)

mysql -uroot -predhat



在浏览器中用用图形界面控制数据库

1)下载phpMyAdmin-3.4.0-all-languages.tar.bz2(lftp 172.25.254.250 然后get下来)
2)yum install php -y ##安装php
3)yum install php-mysql -y ##安装mysql的php图形界面
4)systemctl restart httpd
5)tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2 -C /var/www/html/ ##解压(-C表示解压到目录中)
6)cd /var/www/html ls
7)mv phpMyAdmin-3.4.0-all-languages mysqladmin
8)cd mysqladmin/
9)cp config.sample.inc.php config.inc.php
10)关掉火墙
测试:访问http://172.25.254.120/mysqladmin

成功



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值