使用SQL语句完成下列导出、导入操作:
- 将/etc/passwd文件导入userdb库user表并给每条记录加编号
- 将userdb库user表中UID小于100的前10条记录导出,存为/myload/user2.txt文件
步骤一:将/etc/passwd文件导入MySQL数据库
导入后的表结构取决于/etc/passwd配置文件。若一时记不住各字段的含义,也可以查看passwd配置文件的man手册页,找到格式描述相关的说明,比如:
[root@zhangyx ~]# man 1 passwd
PASSWD(1) User utilities PASSWD(1)
NAME
passwd - update user's authentication tokens
SYNOPSIS
passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays]
[-x maxdays] [-w warndays] [-i inactivedays] [-S]
[--stdin] [username]
DESCRIPTION
The passwd utility is used to update user's authen‐
tication token(s).
This task is achieved through calls to the Linux-
PAM and Libuser API. Essentially, it initializes
itself as a "passwd" service with Linux-PAM and
utilizes configured password modules to authenti‐
cate and then update a user's password.
A simple entry in the global Linux-PAM configura‐
tion file for this service would be:
#
# passwd service entry that does strength checking
of
# a proposed password before updating it.
#
passwd password requisite pam_cracklib.so retry=3
passwd password required pam_unix.so use_authtok
#
Note, other module types are not required for this
application to function correctly.
1)新建userdb库、user表
以数据库用户root登入MySQL服务:
[root@zhangyx ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.7.27-log MySQL Community Server (GPL)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
新建userd库,切换到userd库:
mysql> create database userd;
Query OK, 1 row affected (0.01 sec)
mysql> USE userd;
Database changed
mysql>
新建user表,字段设置及相关操作参考如下:
mysql> create table user(
-> username varchar(24) NOT NULL,
-> password varchar(48) DEFAULT 'x',
-> uid int(5) NOT NULL,
-> fullname varchar(48),
-> homedir varchar(64) NOT NULL,
-> shell varchar(24) NOT NULL
-> );
Query OK, 0 rows affected (0.02 sec)
确认user表的结构:
mysql> DESC user;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| username | varchar(24) | NO | | NULL | |
| password | varchar(48) | YES | | x | |
| uid | int(5) | NO | | NULL | |
| fullname | varchar(48) | YES | | NULL | |
| homedir | varchar(64) | NO | | NULL | |
| shell | varchar(24) | NO | | NULL | |
+----------+---