赞
踩
mariadb:MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。
安装mariadb
yum install mariadb-server -y
systemctl start mariadb
vim /etc/my.conf
skip-networking=1 ##默认的情况下数据库的网络接口是打开的,为了安全需要关闭网络接口
systemctl restart mariadb
##Netstat: Netstat是在内核中访问网络连接状态及其相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
-a | 显示所有socket,包括正在监听的。 |
---|---|
-c | 每隔1秒就重新显示一遍,直到用户中断它 |
-i | 显示所有网络接口的信息,格式“netstat -i” |
-n | 以网络IP地址代替名称,显示出网络连接情形 |
-r | 显示核心路由表,格式同“route -e” |
-t | 显示TCP协议的连接情况 |
-u | 显示UDP协议的连接情况 |
-v | 显示正在进行的工作 |
-p | 显示建立相关连接的程序名和PID |
-b | 显示在创建每个连接或侦听端口时涉及的可执行程序 |
-e | 显示以太网统计。此选项可以与 -s 选项结合使用 |
-f | 显示外部地址的完全限定域名(FQDN) |
-o | 显示与与网络计时器相关的信息 |
-l | 显示监听socket |
Enter current password for root (enter for none): 输入当前root用户的密码(是否不输入)
Set root password? [Y/n] 询问是否设置密码
New password:
Re-enter new password:
Password updated successfully! 密码配置成功
Reloading privilege tables..
... Success!
Remove anonymous users? [Y/n] 询问是否不允许匿名用户登录
Disallow root login remotely? [Y/n] 询问是否不允许远程连接
Remove test database and access to it? [Y/n] 询问是否删除测试数据库并访问它
Reload privilege tables now? [Y/n] 询问是否重新加载权限表
登陆数据库 注意:密码不要写在-p后在企业中不安全(quit退出)
[root@testdb ~]# mysql -uroot -p
Enter password:
mysqladmin -uroot -pwestos password lee
当超级用户密码忘记时:
systemctl stop mariadb
mysqld_safe --skip-grant-tables &
mysql
update mysql.user set Password=password('westos') where User='root';
kill -9 mysql的所有进程id
systemctl start mariadb
记得密码:
忘记密码:
1.查询
SHOW DATABASES; ##显示所以库
USE DATABASENAME; ##使用指定数据库
SHOW TABLES; ##显示当前数据库里所有的表
SELECT * FROM TABLE; ##从表中选中某个记录值
SELECT Host FROM user WHERE User='root'; ##
2.建立
SHOW DATABASES; ##列出库
CREATE DATABASE westos; ##建立库
USE westos; ##进入库
CREATE TABLE userlist ( ##建立表
-> username varchar(50) not null,
-> password varchar(100) not null
-> );
DESC linux; ##查看表结构
INSERT INTO userlist VALUES ('szy','666'); ##插入数据到userlist表中
SELECT * FROM userlist; ##查询所有字段在uselist表中
SELECT username,password from userlist; ##查询指定字段在userlist表中
注意:varchar(50)和char(50)的区别:
varchar(50) 字符长度不超过50,是可变长数据类型,超过50会截取。
char 定长数据类型,指定长度,长度不够会用空格补全后面的。
3.更改
UPDATE userlist SET age='18' where username='szy1';
ALTER TABLE userlist ADD age varchar(4);
ALTER TABLE uerlist DROP age; ##移除age字段
ALTER TABLE userlist ADD sex varchar(2) AFTER password; ##在password后面加入sex
ALTER TABLE userlist RENAME redhat; ##修改表格名字
4.删除
DELETE FROM redhat where username='szy'; ##删除表redhat中szy信息
DROP TABLE redhat; ##删除表redhat
DROP DATABASE westos; ##删除库westos
5.用户授权
实验准备:关闭防火墙,并开放端口3306,让其他主机可以通过网络登陆数据库。
创建两个用户,注意westos@’%'和westos@localhost不是一个用户,用户=名字+可在哪登陆,%表示可以在任何地方可以登陆数据库,而localhost是限制在本机登陆。
CREATE USER westos@'%' identified by 'westos'; by后跟的是用户密码
CREATE USER westos1@localhost identified by 'westos';
SELECT User,Host FROM mysql.user;
测试:分别在本机用xupt用户和其他主机用westos用户测试:
其他主机同样需要安装mariadb,我们可以yum whatprovides */mysql,安装mariadb-5.5.52-1.el7.x86_64,mariadb-server.x86_64 1:5.5.52-1.el7,开启服务systemctl start mariadb.service
mysql -uwestos -h172.25.254.116 -p ##其他主机通过网络访问数据库的命令
mysql -uwestos1 -p ##本机访问
##注意:数据库系统和文件系统一样,都是需要授权的,此时我们给两个用户都没有赋予权力,所以他们只能登陆,且只能看他能看到部分可见的数据库,我们需要root给他们赋予权力他们才能进行其他增删改查操作;超级用户一次可以授予多个权力,用逗号,分开就行。
mysql -uroot -p ##超级用户登陆
SHOW GRANTS FOR xupt@localhost; ##查看xupt@localhost用户的权限
GRANT INSERT,DELETE on westos.* TO xupt@localhost; ##给xupt@localhost赋予查看,插入和删除的权限
mysql -uxupt -pwestos ##登陆
SELECT * FROM westos.userlist; ##查
INSERT INTO westos.userlist VALUES ('szy2','555'); ##增
DELETE FROM westos.linux WHERE username='szy2'; ##删
超级用户回收权力
mysql -uroot -p ##超级用户登陆
REVOKE DELETE,INSERT on westos.* FROM xupt@localhost; ##撤销xupt@localhost增和删的权限
SHOW GRANTS FORxupt@localhost;
删除用户
mysql -uroot -p ##超级用户登录
DROP USER westos@'%'; ##删除用户westos@‘%’
DROP USER xupt@localhost; ##删除用户westos1@localhost
SELECT Host,User FROM mysql.user;
FLUSH PRIVILEGES; ##刷新全局,刷新授权表,当更改未生效时就用刷新命令。
6.数据库的备份
mysqldump -uroot -pwestos westos > /mnt/wesots.sql ##指定备份westos所有结构以及数据到/mnt下
mysqldump -uroot -pwestos westos --no-data ##指定备份westos的结构,但不备份数据
mysqldump -uroot -pwestos --all-database ##备份数据所有结构和数据
mysqldump -uroot -pwestos --all-database --no-data ##只备份所有的结构
7.数据库的恢复
方式1
mysql -uroot -pwestos -e "CREATE DATABASE westos;"
mysql -uroot -pwestos westos < /mnt/westos.sql
方式2
vim /mnt/westos.sql
CREATE DATABASE westos;
USE westos;
mysql -uroot -pwestos < /mnt/westos.sql
1.什么是phpmyadmin?
phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量资料的汇入及汇出更为方便。其中一个更大的优势在于由于phpMyAdmin跟其他PHP程式一样在网页服务器上执行,但是您可以在任何地方使用这些程式产生的HTML页面,也就是于远端管理MySQL数据库,方便的建立、修改、删除数据库及资料表。也可借由phpMyAdmin建立常用的php语法,方便编写网页时所需要的sql语法正确性。
首先安装httpd服务,开启服务并设置为开机启动:
yum install https -y
systemctl start httpd
systemctl enable httpd
获得phpmyadmin的压缩包,并把phpmyadmin的安装包在/var/www/html目录下解压,并解包,我们可以重命名为mysqladmin方便在浏览器下访问。
yum install lftp -y
tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2 ##解压并解包
mv phpMyAdmin-3.4.0-all-languages/ mysqladmin ##重命名
cd mysqladmin
cp config.sample.inc.php config.inc.php
vim config.inc.php
$cfg['blowfish_secret'] = 'ba17c1ec07d65003';
安装php,php-mysql两个包,此时可以通过php -m 命令查看mysql有没有出现,这表示已经运行php加载的模块。
yum search php
yum install php.x86_64 -y
yum install php-mysql.x86_64 -y
php -m
测试:
注意:此时在服务端需要关闭防火墙,或将httpd服务加入防火墙允许的列表中才能正常访问。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。