【Linux操作】国产Linux服务管理操作

【Linux操作】国产Linux服务管理操作

  • 前言
  • SAMBA配置
    • 服务器端
      • 1. 安装相关包
      • 2. 配置/etc/samba/smb.conf,在此文件末尾添加如下内容,并保存退出。
      • 3. 创建/home/share并更改权限
      • 4. 启动samba服务
    • 客户端
        • • Windows客户端
        • • 麒麟客户端
  • Telnet
    • 1、telnet语法
    • 2服务端
      • 1. 安装相关软件
      • 2. 配置xinetd,修改/etc/xinetd.conf,添加如下内容
      • 3. 配置telnet,
      • 4. 重启xinetd服务
    • 3客户端
      • 1. 安装telnet包
      • 2. 访问服务端
  • VNC
    • 1 VNC协议
    • 2 显示协议
    • 3 输入协议
    • 4 VNC工作流程
    • 5 VNC命令
    • 6 VNC实例
  • Mysql
    • 1 Mysql服务器端
      • 1. 服务器端安装及启停
      • 2. 服务器端配置
    • 2 mysql客户端
      • 1. 客户端安装
      • 2. 客户端使用

前言

了解LInux系统samba、telnet、vnc、mysql服务及配置;samba服务配置及实例;telnet服务配置及实例;VNC服务配置及实例;mysql服务配置及实例;

SAMBA配置

Samba是基于SMB/CIFS网络协议的重新实现的一个免费软件,包括服务端和客户端。SMB是Server Messages Block的缩写,是一种在局域网上共享文件和打印机的一种通信协议,为局域网内的不同计算机之间提供文件和打印机等资源的共享服务。

服务器端

服务端安装相关包并做相应配置。此处假设服务器端的ip为192.168.103.51

1. 安装相关包

sudo apt-get install samba

2. 配置/etc/samba/smb.conf,在此文件末尾添加如下内容,并保存退出。

[share]
comment=this is kylin share directory
path=/home/share
create mask=0777                      
directory mask=0777                  
public=yes
writable=yes
available=yes

只有在设置writable=yes时,create mask和directory mask的设置才会生效。
smb.conf文件中配置基本格式为key=value,接下来介绍一下smb.conf文件中常用的参数:
表 1 smb.conf常用选项

参数说明
force user=username强制将登录samba后的用户设置为username,若不指定则登录用户为nobody
create mask创建文件的权限,未指定此参数时,新创文件权限默认为0744,若设置权限,create mask中组或其他用户如果有x权限,则默认会将x权限去掉。如create mask=0655,实际创建文件则为0644
force create mode此参数默认为0000,若设置了此参数,则是将create mask获取的权限再与force create mode权限做或运算,如以上create mask=0655,force create mode=0711,则实际权限为0755
directory mask此参数默认为0755,若设置了参数则按此参数的权限创建文件夹,如设置为0777,则创建的目录权限为0777
forece directory mode此参数默认为0000,与directory mask的权限做合并操作,如directory mask=0664,force directory mode=0755,那么创建的目录权限为0775

smb.conf文件中[share]中括号中的字符串可以自定义,这个标签即为后续客户端访问时需要带上的路径,如此处使用的是[share],则客户端访问为smb://192.168.103.51/share,若为[public]则客户端访问smb://192.168.103.51/public,以此类推。

3. 创建/home/share并更改权限

sudo mkdir /home/share
sudo chmod 777 /home/share

4. 启动samba服务

sudo /etc/init.d/samba start

客户端

麒麟操作系统上配置了samba服务后,可在windows或麒麟系统上访问此共享文件。

• Windows客户端

打开文件浏览器,在地址栏处输入\ip\share,此处ip为samba服务器的ip,即192.168.103.51,回车即可访问麒麟系统共享的文件夹/home/share。

• 麒麟客户端

使用文件浏览器连接到samba服务器之前我们需要先安装samba客户端软件。
安装smbclient包

sudo apt-get install smbclient

图形化连接到samba服务器端:打开文件浏览器,在地址栏输入smb://192.168.103.51/share,回车,见图 1。需要在弹框处输入用户名和密码。 图形化访问不需要安装smbclient安装包,这里顺序要不要调整一下。
在这里插入图片描述

图 1 samba客户端访问麒麟samba服务器端
除了图形化连接smba服务器来实现文件共享之外,我们还可以通过smbclient在终端下进行共享文件的操作。
smbclient语法格式:smbclient service ,常用选项见表 1。
表 1 smbclient常用选项

参数说明
-?或–help提供关于帮助的打印信息
-U username指定以username用户登录到smb服务器端
-L打印远程主机可用的共享文件夹列表
-W/–workgroup=WORKGROUP设置工作域的名称

命令行连接samba服务器的命令见下,-U为指定用户,此处为kylin。

smbclient  //192.168.103.51/share  -U  kylin

详细连接信息见图 2。
在这里插入图片描述

图 2 smbclient命令行连接
进入smb命令行后,我们就可以在共享文件夹中进行上传下载等操作。常用命令如下。
表 2 smb命令行

参数说明
cd [目录]切换smb服务器端的目录到指定目录,如未指定,则smbclient返回当前服务器端的目录
lcd [目录]切换客户端到指定的目录。客户端在哪个目录下登录服务器端,登录后仍在此路径下,切换的路径为相对路径时,需以此为对照。
ls列出服务器端当前目录下的所有文件
get file file1从服务器上下载file,并重命名为file1存放在客户端,若无file1则以当前名称下载到客户端
mget file file1 file2下载多个文件,每个文件下载前会提示是否下载,输入y表示下载,输入n或直接回车为不下载
mkdir 目录md 目录在服务器上创建目录,如未成功,可检查服务器端对应目录的权限
put file1 [file2]向服务器上传文件file1,如有file2,则是将file1更名为file2到服务器上
mput file file1 file3向服务器上批量上传文件,上传每个文件时会提示是否上传,输入y表示上传,直接回车或输入n为不上传

下载和批量上传操作见图 3。
在这里插入图片描述

图 3 下载和批量上传

Telnet

Telnet是用来在互联网或局域网使用虚拟终端来完成远程连接的一种协议,它是TCP/IP协议族中的一员。Telnet协议目的是提供一个相对通用的双向的,面向八位字节的通信方法。应用telnet协议能够把本地用户所使用的计算机变成远程主机系统的一个终端。
我们知道通过telnet协议可在多个操作系统间进行远程交互操作,而不同操作系统间的数据表示及命令又不尽相同。为了解决这些数据和命令被远程机器正确接收和理解,telnet协议定义了数据和命令在internet上的传输方式,我们把这种传输方式称为网络虚拟终端NVT(Net Virtual Terminal)。
用户用telnet传送数据时,将本地数据转换成NVT格式,远程机器接收后再转换成远程机器上对应的格式进行存储。
而用户用telnet传送命令时,将普通字符按照NVT格式按照其原始含义传送,而用户键入的为快捷键时,NVT则将它转化成特殊的ASCII字符传送到远程机器,最后再转化为相应的控制命令。

1、telnet语法

telnet的语法格式为:telnet [-4] [-6] [-8] [-E] [-L] [-a] [-d] [-e char] [-l user]
[-n tracefile] [ -b addr ] [-r] [host-name [port]]
参数说明见表 3。
表 3 telnet参数说明

参数说明
-4强制使用IPv4地址解析
-6强制使用IPv6地址解析
-8允许使用8位字符操作,包括输入与输出,默认情况下非8位字符
-E禁用转义字符功能,也就是说将转义字符设置为“no character”
-a尝试自动登录远端系统
-b address在本地套接字上使用bind(2)将其绑定到指定的本地地址address上
-d将调试切换的初始值设置为true
-r模拟rlogin
-S tos设置IP服务类型(TOS)选项设置为值tos
-e escapechar指定转义字符为escapechar。telnet连接后输入转义字符会进入telnet命令模式
-l user指定user为远程登录时的用户
-n tracefile指定tracefile记录相关跟踪信息
host指定此主机来进行远程连接
port指定连接的端口号

2服务端

要使其他系统使用telnet连接到本机,必须做一些客户端配置。

1. 安装相关软件

sudo apt-get install telnetd xinetd

2. 配置xinetd,修改/etc/xinetd.conf,添加如下内容

        instances = 60                  //同一服务同时连接数最多为60log_type = SYSLOG authpriv          //登录信息会被记录到相关文件/var/log/auth.loglog_on_success = HOST PID          //登录成功记录客户端主机名和PIDlog_on_failure = HOST              //登录失败记录客户端主机名cps = 25 3                         //设置同一秒最大连接数为25,如果超过该服务暂时停止3秒

如图 4。
在这里插入图片描述

图 4 xinetd.conf配置

3. 配置telnet,

创建/etc/xinetd.d/telnet文件,文件内容见下:

 service telnet{disable = no                   //必须设置为no,否则无法连接instances =UNLIMITED           //实例不限制nice =0flags = REUSEsocket_type = stream             //使用TCP的封包格式wait = noserver = /usr/sbin/in.telnetd           //使用这个命令log_on_failure += USERID            //如果登录失败,记录客户端信息}

4. 重启xinetd服务

 sudo /etc/init.d/xinetd restart

3客户端

客户端要访问telnet服务端需要安装telnet包后再访问。

1. 安装telnet包

 sudo apt-get install telnet

2. 访问服务端

 telnet  192.168.103.51

连接示例见图 5。
在这里插入图片描述

图 5 telnet连接示例
使用参数-e,指定转移符为%,输入用户名密码后,命令行输入符号%即会进入telnet命令模式:

kylin@kylin-PC:~/桌面$ telnet -e % 192.168.103.51
Telnet escape character is '%'.
Trying 192.168.103.51...
Connected to 192.168.103.51.
Escape character is '%'.
Kylin 4.0.2
Kylin login: kylin
Password:
......
kylin@Kylin:~$     <——此行输入%回车后即进入telnet命令模式
telnet>            <——telnet命令模式,上行符号%会被擦除

【注】root无法以telnet登录系统,这是由于telnet会引用login的PAM模块,而login的验证阶段会有/etc/securetty文件的限制。root用户只能通过安全终端登录,而远程连接属于pts/n(n为数字)的动态终端接口设备名称,此设备名并未写入到/etc/securetty中,所以root是无法通过telnet远程登录系统的。

VNC

VNC即为虚拟网络控制台,英文全称为Virtual Network Computing,是一款远程控制软件。它能将完整的窗口界面通过网络,传输到另一台计算机屏幕上。VNC软件由VNC server和VNC viewer两部分组成。

1 VNC协议

VNC是基于RFB(Remote Frame Buffer)协议进行通信的。RFB称为远程帧缓冲,是一个远程访问图形用户接口的简单协议。由于此协议工作在帧缓存级别,因此它适用于所有桌面系统和应用,包括X11、windows以及Macintosh。
用户所在的一端成为RFB客户端,而帧缓存变化的一端被称为RFB服务端。
RFB完全是一个瘦客户协议。协议设计的重点就是减少对客户端的要求。因此客户端可以运行在多种硬件上,实现客户端的任务尽可能的简单。
RFB协议使得客户端是“无状态”的。如果一个客户端和服务器端断开连接,之后再次连接到此服务器,用户的会话不会被关闭,状态会一直保持。不同的客户端可以连接到同一服务器,提供给用户端的都是统一的相似的视图。

2 显示协议

RFB协议的显示部分基于一个简单的画图原理,即“将一个矩形块的像素点放在给定位置(X,Y)上”。在不同的参数下(如网络带宽、客户端计算速度和服务器处理的速度等等),可以动态选择灵活的编码方式,这样一来,一系列的矩形块就组成了一个帧缓冲更新。一个帧缓冲更新描述了帧缓冲从一个状态到另一状态的变化情况。只有在客户端请求更新时,服务器端才会向客户端发送更新。客户端以及网络速度越慢,更新率就会降低。

3 输入协议

输入协议是基于键盘和多键鼠标设备的标准工作站模型。当用户敲下键盘或鼠标,或移动鼠标时,客户端把这些输入事件按照RFB规定的格式简单的传送给服务器。输入事件可以由其他非标准I/O设备产生,如手写板。接收到输入事件后,服务器就会进行相应处理。

4 VNC工作流程

前面我们已经知道,VNC分为服务器端和客户端。在VNC server安装在被远程控制的计算机后,可在客户端通过VNC viewer进行远程操控。
VNC服务端与客户端的工作流程见图 6。
在这里插入图片描述

图 6 VNC工作流程
由上图可知,VNC工作流程详细步骤见下:

  1. 服务器端启动VNC server;
  2. VNC客户端启动VNC viewer连接到VNC server;
  3. VNC server将对话窗口发送至客户端,要求客户端输入连接密码;
  4. VNC viewer输入VNC server的连接密码后,将密码发送至VNC server;
  5. VNC server端通过密码验证后,则通过X Protocol将X server画面的显示控制权交由VNC server;
  6. VNC server将X server桌面环境利用VNC通信协议发送至客户端
  7. VNC客户端获取VNC server端的桌面环境、输入控制及显示控制权;

5 VNC命令

本章主要介绍vncserver、vncviewer及vncpasswd命令。
• vncserver命令
此命令在VNC服务器上运行。用来启动或停止VNC服务器。
vncserver启动语法格式:

vncserver [:display#] [-name desktop-name] [-geometry widthxheight]  [-depth depth ] [-pixelformat format] [Xvnc-options.....]

vncserver停止语法格式:

vncserver -kill :display#

vncserver运行时可以不添加参数,这种情况下就会默认选择第一个可用的显示编号,通常情况下为:1。当然也可以使用指定的显示编号,这种情况下如果此编号有效则会使用此显示编号,如果不存在,则会退出,如vncserver :10。
Vncserver的默认端口为5900,每个显示桌面的编号其实对应的就是端口号,比如显示编号为:1,那么对应的端口号即为5901,以此类推。
vncserver的配置文件为~/.vnc/xstartup,修改此配置文件可以改变vncserver的属性。需要强调一点,修改此文件不会影响之前已经存在的vncserver桌面。此外vnc密码文件以及启动的所有显示桌面相关日志及.pid文件都在~/.vnc/下,“KaTeX parse error: Expected 'EOF', got '#' at position 23: …nc/host:display#̲.pid”和“HOME/.vnc/host:display#.log”分别是启动的显示桌面对应的pid文件和日志文件,如kylin:1.pid及kylin:1.log。“$HOME/.vnc/passwd”即为vnc密码文件。
vncserver常用选项见表 4。
表 4 vncserver常用选项

参数说明
-name desktop-name每个显示桌面都有一个名字。默认情况下为“host:display#(username)”,如kylin-PC:1 (kylin)
-geometry widthxheight指定桌面的大小,默认为1024x768,可以通过此选项设置窗口大小,如vncserver -geometry 1360x768
-depth depth指定像素显示桌面的像素深度,默认情况下为16。还可以设置其他值,比如8,15和24。
-pixelformat rgbNNNbgrNNN
-kill :display#指定要停止display#这个编号的vnc桌面。如vncserver -kill :1,即停止编号为1的vnc显示桌面。

vncserver端需修改配置才能正常显示,修改~/.vnc/xstartup,在文末加上以下内容:

mate-session &

修改保存后再启动vncserver服务。
• Vncviewer命令
Vncviewer是VNC的X视图的一个客户端。用来连接到远程服务器并显示其桌面。使用vncviewer需要提前获取到vncserver的密码。
Vncviewer的命令格式:

vncviewer [options] [host][:display]
vncviewer [options] [host][::port]
vncviewer [options] -listen [display]
vncviewer -help

Vncviewer常用选项见表 5。
表 5 vncviewer常用选项

参数说明
-help在终端打印使用方法
-listen [display#]表示监听来自服务器的反向连接,默认监听5500端口,也可使用端口参数,如vncviewer -listen 3则表示监听5503端。WinVNC使用“添加新客户端”菜单选项支持反向连接
-viewonly禁用客户端鼠标和键盘事件传送到服务器的功能,默认关闭
-passwd passwd-file指定连接时的密码文件为passwd-file,也就是说如果将服务器端密码发送到客户端,使用此选项时,就可以不必输入密码,正确的密码文件则会直接连接,而错误密码文件则认证失败断开连接
-encodings encoding-listTightVNC支持几种不同的压缩方法来编码显示桌面的屏幕更新,此选项可以指定优先使用一组方法,如果有多个编码方法,可以使用空格分隔,且这一组编码方法必须使用引号括起来。默认可用的编码为“copyrect tight hextile zlib corre rre raw”
-bgr233一直使用BGR233格式来编码像素数据
-fullscreen开启全屏显示模式。这个模式下有可能会造成输入焦点的错误处理或使窗口突然消失。解决输入焦点问题,可以参照grabKeyboard设置。默认关闭
-depth depth服务器上支持多个像素深度,指定客户端显示桌面的像素深度为depth值

• vncpasswd命令
vncpasswd是用来修改VNC密码的命令。对应的密码文件则为$HOME/.vnc/passwd。Vncserver第一次运行来启动VNC桌面的时候则会调用vncpasswd来设置VNC密码。指定的密码至少6个字符,最长为8个字符。需要注意的是存储的密码并未经过安全加密,也就是说任何有权限访问此文件的用户都可以轻易找到明文密码,所以vncpasswd需要设置适当的权限。
vncpasswd语法格式:

`vncpasswd [passwd-file]`

运行vncpasswd时,不加参数passwd-file,则会默认修改 H O M E / . v n c / p a s s w d 文件,而指定 p a s s w d − f i l e 则会更新此文件下的密码。当然如果在 v n c v i e w e r 连接时默认还是去匹配 HOME/.vnc/passwd文件,而指定passwd-file则会更新此文件下的密码。当然如果在vncviewer连接时默认还是去匹配 HOME/.vnc/passwd文件,而指定passwdfile则会更新此文件下的密码。当然如果在vncviewer连接时默认还是去匹配HOME/.vnc/passwd的密码,要使用指定的密码文件需要使用-passwd参数。

6 VNC实例

• Vnc服务端
Vnc服务端有多种相关包如tightvncserver、vnc4server。本章我们以tightvncserver为例。
安装相关包:

sudo apt-get install tightvncserver

启动vncserver:

vncserver

第一次执行见图 7。
在这里插入图片描述

图 7 启动vncserver
也可指定显示编号来启动vncserver:

vncserver  :8

详细信息见图 8。
在这里插入图片描述

图 8 指定显示编号启动vncserver
如果需要关闭:8的显示桌面,则执行以下命令:

vncserver -kill :8

执行过程及显示信息见图 9。
在这里插入图片描述

图 9 停止:8显示桌面
• VNC客户端
这里我们也安装xtightvncviewer。

sudo apt-get install xtightvncviewer

连接vnc服务器端编号为:1的显示桌面:

vncviewer 192.168.103.50:1

详细信息见图 10。
在这里插入图片描述

图 10 vncviewer连接服务器端
在密码出输入密码即可连接到vnc服务器端的桌面。

Mysql

MySQL是目前最流行的关系型数据库管理系统(关系型数据库管理系统是Relational Database Management System,简写RDBMS),由Oracle公司开发、分发和支持。关系型数据库将数据存储在单独的表中,而不是将所有的数据放在一个大型库中。你可以设置管理不同数据域之间关系的规则,比如一对一,一对多,唯一,必须或可选,以及不同表之间的指针。数据库强制执行这些规则,因此使用设计良好的数据库,用户的应用程序则永远不会出现不一致,重复,孤立,过时或丢失数据的情况。
麒麟系统当前默认集成的版本为5.7。而最新版本的MySQL相关信息可以到http://www.mysql.com/获取。
关系性数据库管理系统RDBMS的特点:

  1. 数据以表格的形式出现;
  2. 每行为各种记录名称;
  3. 每列为记录名称所对应的数据域;
  4. 许多的行和列组成一个表单;
  5. 若干表单组成database;

1 Mysql服务器端

MySQL包含服务端和客户端。

1. 服务器端安装及启停

服务器端需要安装mysql-server,麒麟服务器操作系统默认已经安装,但此处我们还是介绍一下如何安装:

sudo apt-get install mysql-server

安装过程中需要输入mysql的“root”密码。
启动、停止及查看mysql服务

sudo service mysql status          //查看mysql服务状态
sudo service mysql start           //启动mysql服务
sudo service mysql stop        //停止/etc/mysql/mysql.conf.dmysql服务

2. 服务器端配置

Mysql-server的配置文件为/etc/mysql/mysql.cnf、/etc/mysql/conf.d/目录及/etc/mysql/mysql.conf.d/下相关文件。在日常工作中,我们经常遇到需要修改数据库配置来解决问题的情况,如数据库中必然会用到中文字符,默认配置下,会出现乱码情况,这个时候我们就需要修改相关配置啦。
/etc/mysql/mysql.cnf除注释外的配置文件见下:

 !includedir /etc/mysql/conf.d/!includedir /etc/mysql/mysql.conf.d/           

这两行表示导入/etc/mysql/conf.d/和/etc/mysql/mysql.conf.d/下所有的.cnf文件。
这里重点给大家介绍/etc/mysql/mysql.conf.d/mysqld.cnf。

 [mysqld_safe]
socket          = /var/run/mysqld/mysqld.sock
nice            = 0[mysqld]
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 127.0.0.1
#
# * Fine Tuning
#
key_buffer_size         = 16M
max_allowed_packet      = 16M
thread_stack            = 192K
thread_cache_size       = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover-options  = BACKUP
#max_connections        = 100
#table_cache            = 64
#thread_concurrency     = 10
#
# * Query Cache Configuration
#
query_cache_limit       = 1M
query_cache_size        = 16M
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
# As of 5.1 you can enable the log at runtime!
#general_log_file        = /var/log/mysql/mysql.log
#general_log             = 1
#
# Error log - should be very few entries.
#
log_error = /var/log/mysql/error.log
#
# Here you can see queries with especially long duration
#log_slow_queries       = /var/log/mysql/mysql-slow.log
#long_query_time = 2
#log-queries-not-using-indexes
#
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
#       other settings you may need to change.
#server-id              = 1
#log_bin                        = /var/log/mysql/mysql-bin.log
expire_logs_days        = 10
max_binlog_size   = 100M
#binlog_do_db           = include_database_name
#binlog_ignore_db       = include_database_name
#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
#
# * Security Features
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem             

• 最大连接数
麒麟操作系统目前默认集成的为mysql5.7版本,最大的连接数默认为151,如要修改最大连接数可以修改/etc/mysql/mysql.conf.d/mysqld.cnf,将max_connections修改成想要的数值,这里假设为200,保存退出后,需要重启mysql服务。我们来查看一下是否修改成功,见图 11。
在这里插入图片描述

图 11 mysql最大连接数
• 忘记密码
在忘记密码情况下,还可以通过设置mysql来跳过密码验证直接登录到mysql。还是修改/etc/mysql/mysql.conf.d/mysqld.cnf文件,添加skip-grant-tables,见图 12。
在这里插入图片描述

图 12 忘记密码
修改后保存退出,重启mysql服务。再次连接输入错误密码或不输入密码就能直接进入mysql,见图 13。
在这里插入图片描述

图 13 mysql跳过密码验证
• 开放mysql服务端远程连接
Mysql服务端默认情况下仅能本地连接。我们可以通过修改配置文件来开放远程连接。依然是mysqld.cnf文件。用“#”注释以下内容,重启mysql服务即可远程连接。

bind-address           = 127.0.0.1

再进入mysql,将root用户授权给所有连接,输入以下命令:

grant all privileges on *.* to 'root'@'%' identified by '123123';
flush privileges;

【注】第一行命令中的root为mysql客户端连接时需要使用的的用户名,123123为root用户的密码,也就是说客户端使用root和对应的密码即可成功连接到此mysql服务器,而使用其他用户仍无法连接到数据库服务器;第二行命令使第一行命令生效。
具体操作见图 14。
在这里插入图片描述

图 14 mysql开放远程连接
以上操作都完成后,在mysql客户端执行mysql -h server_ip -uroot -p123123即可连接到数据库。Server_ip为数据库服务端的ip。

2 mysql客户端

1. 客户端安装

客户端需要安装mysql-client,麒麟服务器操作系统默认已经安装,但此处我们还是介绍一下如何安装:

sudo apt-get install mysql-client

2. 客户端使用

连接服务器端使用mysql命令,mysql语法格式为:

mysql [options] db_name

若不指定db_name,则默认不选择任何数据库。
mysql常用选项见表 6。
表 6 mysql常用选项

参数说明
-h hostname指定想要连接的mysql服务器的主机名
-u username指定连接到mysql服务器的用户名
-p [password]指定登录用户名对应的密码
-P port指定端口号,默认端口为3306

• 连接本地数据库
连接本地mysql服务端:

mysql  -uroot  -p

以上是指使用root用户登录到mysql数据库,如未配置跳过密码登录的情况下,回车之后需输入root用户的密码。以上命令与以下命令效果一致:

mysql  -u root  -p

也可直接指定登录密码,此处假设root密码为123123,如:

mysql  -uroot  -p123123

• 连接远程数据库
服务器端开放远程登录后,可在其他主机上远程连接到mysql数据库,此处假设数据库服务器ip为192.168.103.51:

mysql -h 192.168.103.51  -uroot  -p123123

• mysql备份还原
Mysql备份使用的命令为mysqldump,由mysql-client包提供,语法格式为:

 mysqldump [options] [db_name [tbl_name ...]]

mysqldump常用选项见表 7。
表 7 mysqldump常用选项

参数说明
-h hostname指定想要连接的mysql服务器的主机名
-u username指定连接到mysql服务器的用户名
-p [password]指定登录用户名对应的密码
-P port指定端口号,默认端口为3306
–all-databases指定备份所有数据库
-databases db_name指定备份db_name数据库

更多mysqldump用法,请查看man手册。

本地备份所有数据库:

mysqldump -uroot -p --all-databases >allbackupfile.sql

远程备份数据库:

mysqldump -h192.168.103.51 -uroot -p123123 --all-databases > alldatabase.sql

备份某指定数据库dbtest,此处为备份tbtest和tbtest1两个表:

mysqldump -uroot -p123123 dbtest tbtest tbtest1 >tb-backup.sql

压缩备份的数据库文件:

mysqldump -uroot -p --all-databases | gzip >bakcupall-gz.sql.gz

所有详细操作见图 15。
在这里插入图片描述

图 15 备份操作
还原某数据库:

mysql -uroot -p123123 dbtest<dbtestbackup.list

还原所有数据库:

mysql -uroot -p123123 <allbackupfile.sql 

还原压缩的数据库,此处是还原所有数据库:

gunzip < bakcupall-gz.sql.gz | mysql -uroot -p

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/620884.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JOSEF约瑟端子排中间继电器 DZY-204 DC110V 导轨安装,板前接线

DZY系列端子排中间继电器 系列型号&#xff1a; DZY-101端子排中间继电器 DZY-104端子排中间继电器 DZY-105端子排中间继电器 DZY-301端子排中间继电器 DZY-106端子排中间继电器 DZY-401端子排中间继电器 DZY-204端子排中间继电器 一、 概述 DZY-204端子排中间继电器用于各种…

unity C#什么时候用“可空类型”

文章目录 例子1. **声明一个可空类型变量&#xff1a;**2. **给可空类型变量赋值&#xff1a;**3. **检查可空类型变量是否有值&#xff1a;**4. **转换与比较&#xff1a;**5. **使用null合并运算符&#xff1a;** 可空类型的重要意义1. **表示缺失或未知的值&#xff1a;**2.…

每日一博 - 使用APIFOX调测 @RequestBody标注的对象

文章目录 概述发送 post 请求步骤1.新建接口&#xff0c;设置为 post 请求2. 填写 URL 和参数3.发送请求 实战 RequestBody 概述 APIFOX&#xff08;类似Postman&#xff09;提供了丰富的功能来支持用户发送包含各种信息的 POST 请求&#xff0c;如文本数据、JSON 或 XML 数据…

云卷云舒:AI for DB、DB for AI

云卷云舒&#xff1a;算力网络云原生&#xff08;下&#xff09;&#xff1a;云数据库发展的新篇章-CSDN博客https://blog.csdn.net/bishenghua/article/details/135050556 随着数据库和AI技术的分支同向演进&#xff0c;AI 和数据库间的关联越发紧密了。 大模型的演进发展&a…

element中el-cascader级联选择器只有最后一级可以多选

文章目录 一、前言二、实现2.1、设置popper-class和multiple2.2、设置样式 三、最后 一、前言 element-ui中el-cascader级联选择器只有最后一级可以多选&#xff0c;其它级只有展开子节点的功能&#xff0c;如下图所示&#xff1a; 可以观察到最后一级的li节点上没有属性aria-…

java基础知识点系列——基础语法(三)

java基础知识点系列——基础语法&#xff08;三&#xff09; 注释 注释概述 注释是在程序指定位置添加的说明性信息。注释不参与程序运行&#xff0c;仅起到说明作用。 注释分类 单行注释&#xff0c;格式&#xff1a;// 注释信息多行注释&#xff0c;格式&#xff1a;/* …

面向对象的三大特征之二:继承 --java学习笔记

什么是继承? 关键字extends,用这个关键字&#xff0c;可以让一个类和另一个类建立起父子关系 继承的特点&#xff1a;子类能继承父类的非私有成员&#xff08;成员变量、成员方法&#xff09;继承后对象的创建&#xff1a;子类的对象时由子类、父类共同完成的 代码演示&am…

Hex Editor的使用教程(VS Code)

Hex Editor&#xff08;十六进制编辑器&#xff09;是一种用于查看和编辑计算机文件的低级别编辑工具。与常规文本编辑器不同&#xff0c;它允许用户直接查看和修改文件的二进制数据。在 Hex Editor 中&#xff0c;数据通常以十六进制&#xff08;hex&#xff09;格式显示&…

Qt/QML编程学习之心得:使用camera摄像头(35)

汽车应用中,camera起到了越来越多的作用,数字化的作用,这点无可争议,而作为GUI设计工具,如何让Camera类的应用能更好的发挥作用呢? You can use Camera to capture images and movies from a camera, and manipulate the capture and processing settings that get appl…

EI论文复现:考虑多能互补的综合能源系统/虚拟电厂/微电网优化运行程序代码!

本程序参考EI论文《基于多能互补的热电联供型微网优化运行》&#xff0c;文章通过储能设备解耦热电联系&#xff0c;建立基于多能互补的综合能源系统/虚拟电厂/微电网优化运行模型。模型包含系统供给侧的多能互补协调与需求侧的综合能源响应两个方面&#xff0c;使供给侧通过能…

Grind75第9天 | 733.图像渲染、542.01矩阵、1235.规划兼职工作

733.图像渲染 题目链接&#xff1a;https://leetcode.com/problems/flood-fill 解法&#xff1a; 可以用深度优先搜索和广度优先搜索。 深度优先搜索。每次搜索到一个方格时&#xff0c;如果其与初始位置的方格颜色相同&#xff0c;就将该方格的染色&#xff0c;然后继续对…

Qt构建MSVC2015环境过程

Qt构建MSVC2015环境过程 前言 之前用的Qt都是基于默认的MinGW编译器&#xff0c;由于目前工作的QT界面主要是跑在X86上&#xff0c;所以记录一下Qt配置MSVC2015的配置过程。根据查阅了解以后&#xff0c;个人理解的MinGW跟MSVC的区别在于前者主要是用于跨平台程序构建&#x…

Redis命令 - Hashes命令组常用命令

1、HSET key field value 设置 key 指定的哈希集中指定字段的值。 HSET key field value 返回值&#xff1a;1代表field是一个新的字段。0代表field已存在 如果 key 指定的哈希集不存在&#xff0c;会创建一个新的哈希集并与 key 关联。如果字段在哈希集中存在&#xff0c;它将…

软件需求分析报告—word

技术要求 1.1接口要求 1.2可靠性&#xff0c;稳定性&#xff0c;安全性&#xff0c;先进性&#xff0c;拓展性&#xff0c;性能&#xff0c;响应。 2.系统安全需求 2.1物理设计安全 2.2系统安全设计 2.3网络安全设计 2.4应用安全设计 2.5用户安全管理 进主页获取更多资料

靶场实战(15):OSCP备考之VulnHub STAPLER

打靶思路 资产发现 主机发现服务发现漏洞发现&#xff08;获取权限&#xff09; 21端口/FTP服务 组件漏洞口令漏洞139端口/SMB服务 组件漏洞口令漏洞666端口/doom服务 组件漏洞其它漏洞80端口/HTTP服务 组件漏洞URL漏洞12380端口/HTTP服务 组件漏洞URL漏洞12380端口/HTTPS服务 …

gitee创建远程仓库并克隆远程仓库到电脑

1、首先点加号新建一个仓库 2、输入仓库名&#xff0c;路径会自动填充&#xff0c;填写简单的仓库介绍&#xff0c;先选择私有&#xff0c;在仓库创建之后&#xff0c;可以改为开源 3、打开建好的仓库 4、复制仓库链接 5、打开一个文件夹(想要存储远程仓库的地址)&#xff0c;在…

C# 图解教程 第5版 —— 第24章 预处理指令

文章目录 24.1 什么是预处理指令24.2 基本规则24.3 符号指令&#xff08;#define、#undef &#xff09;24.4 条件编译&#xff08;#if、#else、#elif、#endif&#xff09;24.5 条件编译结构24.6 诊断指令&#xff08;#warning、#error&#xff09;24.7 行号指令&#xff08;#li…

Web后端开发

一、Maven 1.1 简介 1.2 作用 1.3 流程 通过各种插件实现项目的标准化构建。 1.4 安装 1.5 配置环境 1.5.1 当前工程环境 1.5.2 全局环境 1.6 创建 Maven项目 1.7 导入项目 1.8 依赖管理 1.8.1 依赖配置 1.8.2 依赖传递 pom.xml——右键——Diagrams——show dependen…

隧道应用1-netsh端口映射内网

测试环境信息 物理机内网 IP &#xff1a;192.168.249.1 win7 虚拟机 IP &#xff1a; 192.168.249.131 win10 虚拟机 IP &#xff1a;192.168.249.129 我们在 win7 上配置 netsh 端口映射&#xff0c;将 win7 作为跳板机&#xff0c;进而访问到 win10 的服务。 端口映射与…