Linux网络服务_mysql

Linux网络服务_mysql数据库

数据的存储—>数据库负责
数据库由数据表组成
username字段 sex字段 age字段 class字段
zgc boy 20 linux —>数据
zwh boy 21 linux —>数据
搜索数据库系统中的数据库 yum search mysql —>mariadb-devel.i686 安装数据库 yum install mariadb-server.x86_64 -y systemctl start mariadb mysql //打开mysql数据库 show databases; //查看库(目录) ![这里写图片描述](https://img-blog.csdn.net/20180203091215042?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvendoendoMDIyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast) use mysql; //使用库 show tables; //查看表格 select * from user; //查看内容
安装好不能直接使用
原因
1.无密码
2.开源,敞开的
3.接口为3306,不能对互联网直接敞开,需要关闭端口
4.需要做安全初始化

数据库安全初始化
查看接口

[[email protected] ~]# netstat -antlupe | grep mysql
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 27 179803 878/mysqld

查看mysql配置文件

[[email protected] ~]# rpm -qc mariadb-server
/etc/logrotate.d/mariadb
/etc/my.cnf.d/server.cnf
/var/log/mariadb/mariadb.log
[[email protected] ~]# vim /etc/my.cnf
skip-networking=1 //第6行,禁止通过网络访问mysql
systemctl restart mariadb
[[email protected] ~]# netstat -antlupe | grep mysql //查看,后面没有显示端口即设置成功

查看模板
安装说明文档rpm - qd mysql

[[email protected] ~]# mysql_secure_installation
Enter current password for root (enter for none): //输入密码,默认为空
Set root password? [Y/n] y //设定密码
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
… Success!
Remove anonymous users? [Y/n] y //关闭匿名用户链接
… Success!
Disallow root login remotely? [Y/n] y //关闭远程root用户链接
… 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!
[[email protected] ~]# mysql -uroot -p 以root身份登陆数据库
Enter password:
[[email protected] ~]# mysql -uroot -predhat 明文密码登陆—>等着失业吧!

操作mysql
mysql -uroot -p 登陆数据库

show databases; 查看(显示)数据库
MariaDB [(none)]> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| performance_schema |
+——————–+
3 rows in set (0.00 sec)
use mysql; 进入数据库


show tables; 显示表
MariaDB [mysql]> show tables;
+—————————+
| Tables_in_mysql |
+—————————+
| columns_priv |
| db |
| event |
| func |
| general_log |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| host |
| ndb_binlog_index |
| plugin |
| proc |
| procs_priv |
| proxies_priv |
| servers |
| slow_log |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+—————————+
24 rows in set (0.00 sec)


desc user; 查看user表的结构,字段
MariaDB [mysql]> desc servers;
+————-+———-+——+—–+———+——-+
| Field | Type | Null | Key | Default | Extra |
+————-+———-+——+—–+———+——-+
| Server_name | char(64) | NO | PRI | | |
| Host | char(64) | NO | | | |
| Db | char(64) | NO | | | |
| Username | char(64) | NO | | | |
| Password | char(64) | NO | | | |
| Port | int(4) | NO | | 0 | |
| Socket | char(64) | NO | | | |
| Wrapper | char(64) | NO | | | |
| Owner | char(64) | NO | | | |
+————-+———-+——+—–+———+——-+
9 rows in set (0.00 sec)


select host.user,password from user; 查询user中的host和user字段
MariaDB [mysql]> select user from user;
+——+
| user |
+——+
| root |
| root |
| root |
+——+
3 rows in set (0.00 sec)


建立数据库 create datebase westos;
建立数据表 use westos;
show tables;
MariaDB [westos]> create table linux(
-> username varchar(10) not null,
-> password varchar(50) not null
-> );
Query OK, 0 rows affected (0.36 sec)
desc linux; //查看
Linux网络服务_mysql
insert into linux values (‘lee’,’123’); //插入
select * from linux //查询
Linux网络服务_mysql

重命名表(5.0版本无法重命名库)
show tabless //查看库

Linux网络服务_mysql

alter table linux rename usertab;
show tables //查看

Linux网络服务_mysql

添加字段
ALTER TABLE linux ADD class varchar(10);
DESC linux //查看

Linux网络服务_mysql

插入到指定位置 ALTER TABLE linux ADD age varchar(10) AFTER password;
//插入到password后面
DESC linux //查看

Linux网络服务_mysql

删除表 ALTER TABLE linux DROP age; //删除表

Linux网络服务_mysql

更改表中内容信息 UPDATE linux set password=’789’ WHERE username=’lee1’;

Linux网络服务_mysql

删除数据
MariaDB [westos]> delete from linux where username=’lee’ and password =’789’;
Query OK, 1 row affected (0.02 sec)
MariaDB [westos]> select * from linux;
Empty set (0.00 sec)
删除表
MariaDB [westos]> drop table linux;
Query OK, 0 rows affected (0.04 sec)
MariaDB [westos]> show tables;
Empty set (0.00 sec)
删除库
MariaDB [westos]> drop database westos;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> show databases;

Linux网络服务_mysql

用户授权==新建用户
[[email protected] ~]# mysql -uroot -p
CREATE USER [email protected] identified by ‘lee’;
//@localhost为本地用户,identified为密码
MariaDB [(none)]> use mysql

MariaDB [mysql]> select User,Password from user;//查看建立的用户信息
+——+——————————————-+
| User | Password |
+——+——————————————-+
| root | *84BB5DF4823DA319BBF86C99624479A198E6EEE9 |
| root | *84BB5DF4823DA319BBF86C99624479A198E6EEE9 |
| root | *84BB5DF4823DA319BBF86C99624479A198E6EEE9 |
| lee | *9BB439A3A652A9DAD3718215F77A7AA06108A267 |
+——+——————————————-+
4 rows in set (0.00 sec)

mysql -ulee -plee //登陆
show datebases; //此时无法查看,需要授权
Linux网络服务_mysql

切换到超级用户
GRANT SELECT,INSERT on westos.* TO [email protected]
//授权lee在westos表上的所有操作
切换用户SHOW tables; //查看
MariaDB [(none)]> show grants for [email protected];//查看授权信息

Linux网络服务_mysql

取消授权
MariaDB [(none)]> REVOKE SELECT ON westos.* FROM [email protected];//取消插入
SELECT //取消查看
忘记本地用户密码 mysql -uroot -p
select User,Password from user;//查看建立的用户信息
update mysql.user set Password=password(‘hello’) where User=’lee’; //更改密码,password()为密文显示,否则查看select User,Password from user;时会显示设置的密码明文

Linux网络服务_mysql

[[email protected] ~]# systemctl restart mariadb.service

忘记超级用户密码
关闭数据库 systemctl stop mariadb
启动mysql安全模式 mysql //查看
myaqld_safe –skip-grant-tables &//启动mysql时不开启授权表
进入安全模式 mysql
update mysql.user set Password=password(‘hello’) where User=’root’;
查看进程 ps aux | grep mysql
结束进程id kill -9 7098 //结束所有的
重启mysql systemctl start mariadb

数据库的备份
查看数据库 show databases;
查看表 show tables;
查看 desc linux;
插入数据
insert into linux values(‘user1’,’123’,’18’);
insert into linux values(‘user2’,’123’,’28’);
insert into linux values(‘user3’,’123’,’38’);
查询 select * from linux;

Linux网络服务_mysql

备份westos mysqldump -uroot -pwestos westos > /mnt/westos.sql
备份westos结构不要数据 mysqldump -uroot -pwestos westos –no-data > /mnt/westos.sql

备份所有的 mysqldump -uroot -pwestos –all-database > /mnt/westos.sql
备份所有的结构不要数据mysqldump -uroot -pwestos –all-database –no-data > /mnt/westos.sql

保存在文件中,规范化—>后缀写为.sql(后缀什么都无所谓)
检测 删除数据库

[[email protected] ~]# mysql -uroot -pwestos -e “DROP DATABASE westos;”
方式一 写入文件 vim /mnt/westos.sql
建立库 line21 CREATE DATABASE
USE westos

Linux网络服务_mysql

方式二 不进入交互界面
mysql -uroot -pwestos -e “CREATE DATABASE westos;” //后执行命令
mysql -uroot -pwestos westos < /mnt/westos.sql
测试:
查看数据库 show databases; 查看表 show tables;
查看字段 desc linux; 查看内容 select * from linux;

加载图形
下载 phpMyAdmin-3.4.0-all-languages.tar.bz2
安装php [[email protected] ~]# yum install php -y
安装mysql的php图形界面 [[email protected] ~]# yum install php-mysql -y
重启服务 [[email protected] ~]# systemctl restart httpd
解压 [[email protected] ~]# tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2 -C /var/www/html/ //-C表示解压到目录中
查看内容 [[email protected] html]# ls
index.html phpMyAdmin-3.4.0-all-languages
重命名 [[email protected] html]# mv phpMyAdmin-3.4.0-all-languages mysqladmin
[[email protected] html]# cd mysqladmin/
复制并命名[[email protected] mysqladmin]# cp config.sample.inc.php config.inc.php

!!![[email protected] mysqladmin]# vim config.inc.php //php4.2之前需要设置配置文件
测试:
http://172.25.254.100/mysqladmin