MySQL 8.0.39
Source Code Documentation
Sql_cmd_clone Class Reference

Sql_cmd_clone implements CLONE ... statement. More...

#include <sql_admin.h>

Inheritance diagram for Sql_cmd_clone:
[legend]

Public Member Functions

 Sql_cmd_clone ()
 Construct clone command for clone server. More...
 
 Sql_cmd_clone (LEX_USER *user_info, ulong port, LEX_CSTRING data_dir)
 Construct clone command for clone client. More...
 
 Sql_cmd_clone (LEX_CSTRING data_dir)
 Construct clone command for local clone. More...
 
enum_sql_command sql_command_code () const override
 Return the command code for this statement. More...
 
bool execute (THD *thd) override
 Execute this SQL statement. More...
 
bool execute_server (THD *thd)
 Execute clone server. More...
 
bool load (THD *thd)
 Load clone plugin for clone server. More...
 
bool rewrite (THD *thd, String &rlb)
 Re-write clone statement to hide password. More...
 
bool is_local () const
 
- Public Member Functions inherited from Sql_cmd
bool needs_explicit_preparation () const
 
bool is_regular () const
 
bool is_prepared () const
 
virtual bool prepare (THD *)
 Prepare this SQL statement. More...
 
virtual void cleanup (THD *)
 Command-specific reinitialization before execution of prepared statement. More...
 
void set_owner (Prepared_statement *stmt)
 Set the owning prepared statement. More...
 
Prepared_statementowner () const
 Get the owning prepared statement. More...
 
void set_as_part_of_sp ()
 Mark statement as part of procedure. More...
 
bool is_part_of_sp () const
 
virtual bool is_dml () const
 
virtual bool is_single_table_plan () const
 
virtual bool accept (THD *, Select_lex_visitor *)
 
virtual const MYSQL_LEX_CSTRINGeligible_secondary_storage_engine () const
 Is this statement of a type and on a form that makes it eligible for execution in a secondary storage engine? More...
 
void disable_secondary_storage_engine ()
 Disable use of secondary storage engines in this statement. More...
 
bool secondary_storage_engine_disabled () const
 Has use of secondary storage engines been disabled for this statement? More...
 
void use_secondary_storage_engine (const handlerton *hton)
 Mark the current statement as using a secondary storage engine. More...
 
bool using_secondary_storage_engine () const
 Is this statement using a secondary storage engine? More...
 
const handlertonsecondary_engine () const
 Get the handlerton of the secondary engine that is used for executing this statement, or nullptr if a secondary engine is not used. More...
 
void set_optional_transform_prepared (bool value)
 
bool is_optional_transform_prepared ()
 

Private Attributes

LEX_CSTRING m_host
 Remote server IP. More...
 
const ulong m_port
 Remote server port. More...
 
LEX_CSTRING m_user
 User name for remote connection. More...
 
LEX_CSTRING m_passwd
 Password for remote connection. More...
 
LEX_CSTRING m_data_dir
 Data directory for cloned data. More...
 
Clone_handlerm_clone
 Clone handle in server. More...
 
plugin_ref m_plugin
 Loaded clone plugin reference. More...
 
bool m_is_local
 If it is local clone operation. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Sql_cmd
 Sql_cmd ()
 
virtual ~Sql_cmd ()
 
void set_prepared ()
 Set this statement as prepared. More...
 

Detailed Description

Sql_cmd_clone implements CLONE ... statement.

Constructor & Destructor Documentation

◆ Sql_cmd_clone() [1/3]

Sql_cmd_clone::Sql_cmd_clone ( )
inlineexplicit

Construct clone command for clone server.

◆ Sql_cmd_clone() [2/3]

Sql_cmd_clone::Sql_cmd_clone ( LEX_USER user_info,
ulong  port,
LEX_CSTRING  data_dir 
)
explicit

Construct clone command for clone client.

Parameters
[in]user_infouser, password and remote host information
[in]portport for remote server
[in]data_dirdata directory to clone

◆ Sql_cmd_clone() [3/3]

Sql_cmd_clone::Sql_cmd_clone ( LEX_CSTRING  data_dir)
inlineexplicit

Construct clone command for local clone.

Parameters
[in]data_dirdata directory to clone

Member Function Documentation

◆ execute()

bool Sql_cmd_clone::execute ( THD thd)
overridevirtual

Execute this SQL statement.

Parameters
thdthe current thread.
Returns
false if success, true if error

Implements Sql_cmd.

◆ execute_server()

bool Sql_cmd_clone::execute_server ( THD thd)

Execute clone server.

Parameters
[in]thdserver session
Returns
true, if error

◆ is_local()

bool Sql_cmd_clone::is_local ( ) const
inline
Returns
true, if it is local clone command

◆ load()

bool Sql_cmd_clone::load ( THD thd)

Load clone plugin for clone server.

Parameters
[in]thdserver session
Returns
true, if error

◆ rewrite()

bool Sql_cmd_clone::rewrite ( THD thd,
String rlb 
)

Re-write clone statement to hide password.

Parameters
[in,out]thdserver session
[in,out]rlbthe buffer to return the rewritten query in. empty if none.
Returns
true iff query is re-written

◆ sql_command_code()

enum_sql_command Sql_cmd_clone::sql_command_code ( ) const
inlineoverridevirtual

Return the command code for this statement.

Implements Sql_cmd.

Member Data Documentation

◆ m_clone

Clone_handler* Sql_cmd_clone::m_clone
private

Clone handle in server.

◆ m_data_dir

LEX_CSTRING Sql_cmd_clone::m_data_dir
private

Data directory for cloned data.

◆ m_host

LEX_CSTRING Sql_cmd_clone::m_host
private

Remote server IP.

◆ m_is_local

bool Sql_cmd_clone::m_is_local
private

If it is local clone operation.

◆ m_passwd

LEX_CSTRING Sql_cmd_clone::m_passwd
private

Password for remote connection.

◆ m_plugin

plugin_ref Sql_cmd_clone::m_plugin
private

Loaded clone plugin reference.

◆ m_port

const ulong Sql_cmd_clone::m_port
private

Remote server port.

◆ m_user

LEX_CSTRING Sql_cmd_clone::m_user
private

User name for remote connection.


The documentation for this class was generated from the following files: