数据库的安装以及基本命令的使用
查看有哪些仓库:
[root@node01 ~]# yum repolist
repo id repo name status
!c7-extra CentOS7-extra 189
!c7-local-http CentOS7-local-http 10,070
# 如下命令 仅试用于gw环境下面的主机 禁用c7-extra仓库 因为与dvd中的软件包冲突
[root@node01 ~]# yum install mariadb-server --disablerepo=c7-extra
Installing: # 出现mariadb-server字样 表示成功
mariadb-server x86_64 1:5.5.65-1.el7 c7-local-http 11 M
# 启动数据库
[root@node01 ~]# systemctl start mariadb
# 登录数据库
# 所有命令 以;号结尾
[root@node01 ~]# mysql # 直接回车 默认无密码 登录本机
MariaDB [(none)]>
MariaDB [(none)]> create database 6ecc DEFAULT CHARSET utf8 COLLATE utf8_general_ci; # 创建数据库 命令: create database
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> use 6ecc; # 进入数据库 use
Database changed
# 创建表
MariaDB [6ecc]> create table hot_movies (
-> id int(11) primary key auto_increment,
-> movie_url char(255) not null,
-> movie_name char(255) not null
-> ) CHARSET=utf8;
Query OK, 0 rows affected (0.00 sec)
# 向表 hot_movies 插入数据
MariaDB [6ecc]> insert into hot_movies(movie_url,movie_name) values ('0529.jpg','速度与激情9');
Query OK, 1 row affected, 1 warning (0.00 sec)
MariaDB [6ecc]> select movie_url,movie_name from hot_movies; +-----------+------------------+
| movie_url | movie_name |
+-----------+------------------+
| 0529.jpg | 速度与激情9 |
+-----------+------------------+
1 row in set (0.00 sec)
# 备份数据库
# 导出所有数据库 -u:用户名 -p:密码 注意: -u用户名 -p'密码' 之间无空格
[root@node01 ~]# mysqldump -uroot -p'' --all-databases > /tmp/all_databases.sql
# 本机 无密码时 用户名和密码可以省略
# 导出数据库表
[root@node01 ~]# mysqldump 6ecc > /tmp/no_data_6ecc.sql
# 只要表结构 无数据
[root@node01 ~]# mysqldump --no-data --databases 6ecc > /tmp/6ecc_no_data.sql
# 恢复数据库
[root@node01 ~]# mysql
MariaDB [(none)]> show databases; # 查看/列出当前数据库的列表
MariaDB [(none)]> use 6ecc; # 进入数据库
MariaDB [6ecc]> drop table hot_movies; # 删除表
Query OK, 0 rows affected (0.00 sec)
第1种方式:
MariaDB [6ecc]> source /tmp/6ecc.sql; # 恢复数据
MariaDB [6ecc]> select * from hot_movies; # 查询结果
+----+-----------+------------------+
| id | movie_url | movie_name |
+----+-----------+------------------+
| 1 | 0529.jpg | 速度与激情9 |
+----+-----------+------------------+
1 row in set (0.00 sec)
第2种方式:
[root@node01 tmp]# mysql 6ecc < /tmp/6ecc.sql
授权:
MariaDB [6ecc]> grant all privileges on *.* to 'nicaicai'@'10.15.200.%' identified by '123.com';
MariaDB [6ecc]> flush privileges;
Query OK, 0 rows affected (0.00 sec)