sql >> Database teknologi >  >> RDS >> Mysql

Flytte MySql fra Windows-server til linux

Flytning af MySQL/Windows til samme version af MySQL/Linux

Du kan mysqldumpe alle databaserne som følger:

C:\> mysqldump -uroot -p --routines --triggers --flush-privileges --all-databases > MySQLData.sql

Flyt MySQLData.sql til Linux-boksen og kør genindlæsningen

mysql -uroot -p < MySQLData.sql

Flytning af MySQL/Windows til en højere version af MySQL/Linux

Du kan mysqldumpe alle databaserne UNDTAGET mysql-SKEMAET!!! Hvorfor?

Her er et Windows Batch-script til at mysqldumpe alle databaser undtagen mysql-skemaet og derefter dumpe mysql-skemaet i ren SQL:

rem
rem Startup Settings
rem
set MYSQL_CONN=-uroot -prootpassword
set MYSQLDUMP_OUTPUT=C:\LocalDump.sql
set MYSQL_USERGRANTS=C:\LocalGrants.sql
set MYSQL_TEMPGRANTS=C:\TempGrants.sql
rem
rem Get MySQL User Data
rem
set MYSQLDUMP_OPTIONS=--routines --triggers --databases
set SQLSTMT=SELECT CONCAT('mysqldump %MYSQL_CONN% %MYSQLDUMP_OPTIONS% ',DBList)
set SQLSTMT=%SQLSTMT% FROM (SELECT GROUP_CONCAT(schema_name SEPARATOR ' ') DBList
set SQLSTMT=%SQLSTMT% FROM information_schema.schemata WHERE schema_name NOT IN
set SQLSTMT=%SQLSTMT% ('information_schema','mysql','performance_schema')) A
echo echo off > C:\RunLocalDump.bat
mysql %MYSQL_CONN% -ANe"%SQLSTMT%" >> C:\RunLocalDump.bat
C:\RunLocalDump.bat > %MYSQLDUMP_OUTPUT%
rem
rem Get MySQL User Grants
rem
set SQLSTMT=SELECT CONCAT('SHOW GRANTS FOR ''',user,'''@''',host,''';')
set SQLSTMT=%SQLSTMT% FROM mysql.user WHERE LENGTH(user)
echo %SQLSTMT%
mysql %MYSQL_CONN% -ANe"%SQLSTMT%" > %MYSQL_TEMPGRANTS%
mysql %MYSQL_CONN% -AN < %MYSQL_TEMPGRANTS% > %MYSQL_USERGRANTS%
del %MYSQL_TEMPGRANTS%

Når du har oprettet mysqldump og Grants-filen, skal du blot kopiere dem til Linux-serveren og udføre dem lokalt. Udfør mysqldump først. Indlæs derefter bevillingerne.

Prøv det!!!



  1. Hvad er måder at få fælles venner på i et (1, 2) (2, 1) venskabsscenarie?

  2. Hvordan skriver man DataFrame til postgres-tabel?

  3. Løsning af arkitekturmismatch-fejl ved brug af Microsoft Access

  4. Postgres UNIK BEGRÆNSNING for array