linuxmysql迁移
mysql要转换到另一台机器上面,最重要的要考虑以下几个问题
1、数据库使用什么存储引擎,如果是myisam的话,可以把data目录复制移走。但如果是innodb的话,千万不要用这种方法,会存在种种问题的。至于innodb引myisam的区别,网络一下详细点。
2、本地的操作系统是否引目标操作系统相同,如果是linux与windows之间的转移,因为平台的的不台,注意大小写表名字段的兼容性。也可以在或者中忽略大小写。
3、比较安全的做法,还是用mysqlmp的方法导出来,再用mysqlmp的方法导进去,这是一种比较保险安全兼容性高的做法,请考虑。
如果还有什么疑问,欢迎追问。
② linux mysql 大数据 怎么转移
如果能打包成 .sql.zip 就按压缩包形式scp传送
如果不能打包而且每个表都是三个源文件的,直接传送mysql的数据库源文件
③ 请教linux下mysql迁移问题
第一 你要确定 你的是哪个存储引擎。
第二:
myisam 直接 即可
第三:
innodb 假设数据不大用工具mysqlmp 备份 拷贝过去还原 ,数据大 用mymper 或者 innobackupex
其中 mymper mysqlmp 都可以在 你要迁移的目的主机上面操作(远程备份) 就省下 cp过程 但是这个需要主要影响是带宽 io
innobackupex 也可以备份文件放到远程
第四 :直接做主从也是一种,但是 备份在还原快点
第五:启动mysql 测试
④ linux下如何迁移mysql的数据存储目录
你把现在的数据目录原封不动的mv到你想要的地方,然后打开配置文件。vim /etc/my.cnf [mysqld]下的datadir=/XX/XX/XX 修改成你要的目录即可
⑤ Linux Mysql如何移动MySQL数据库目录位置
假如要把目录移到/home/data下需要进行下面几步:
1、home目录下建立data目录
cd /home
mkdir data
2、把MySQL服务进程停掉:
mysqladmin -u root -p shutdown
3、把/var/lib/mysql整个目录移到/home/data
mv /var/lib/mysql/home/data/
这样就把MySQL的数据文件移动到了/home/data/mysql下
4、找到my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:
[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf/etc/my.cnf
5、编辑MySQL的配置文件/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。操作如下:
vi my.cnf (用vi工具编辑my.cnf文件,找到下列数据修改之)
# The MySQL server
[mysqld]
port= 3306
#socket = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
socket = /home/data/mysql/mysql.sock(加上此行)
6、修改MySQL启动脚本/etc/init.d/mysql
最后,需要修改MySQL启动脚本/etc/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。
[root@test1 etc]# vi/etc/init.d/mysql
#datadir=/var/lib/mysql(注释此行)
datadir=/home/data/mysql (加上此行)
7、重新启动MySQL服务
/etc/init.d/mysqlstart
或用reboot命令重启Linux
如果工作正常移动就成功了,否则对照前面的7步再检查一下。还要注意目录的属主和权限。
⑥ 在linux中导入sql文件的方法分享(使用命令行转移mysql数据库)
因导出sql文件
在你原来的网站服务商处利用phpmyadmin导出数据库为sql文件,这个步骤大家都会,不赘述。
上传sql文件
前面说过了,我们没有在云主机上安装ftp,怎么上传呢?
打开ftp客户端软件,例如filezilla,使用服务器ip和root及密码,连接时一定要使用SFTP方式连接,这样才能连接到linux。注意,这种方法是不安全的,但我们这里没有ftp,如果要上传本地文件到服务器,没有更好更快的方法。
我们把database.sql上传到/tmp目录。
连接到linux,登录mysql
使用putty连接到云主机。putty的使用方法这里就不介绍了。
连接之后,登录mysql
复制代码
代码如下:
>mysql
-u
root
-p
>password:
注意,如果你之前建立了其他的mysql用户,可以选择合适的用户登录。关于mysql的命令行,你可以在其他地方学习。
把上传上去的sql导入到数据库中
按照下面的三个步骤,快速导入这个sql文件
复制代码
代码如下:
mysql>use
yourdatabasename;
mysql>set
names
utf8;
mysql>source
/tmp/database.sql;
然后屏幕上就会不断的滚,最后提示导入成功。
最后,记得将database.sql删除。
⑦ linux mysql数据库转移别的linux上
直接把data目录下的所有文件拷贝到另外的MYSQL系统即可,LINUX可以,WINDOWS也可以,MYSQL的数据库文件是二进制兼容的。
⑧ 怎样用命令行把MySQL数据库迁移到另一台Linux服务器
1、用mp命令备份数据库。
# mysqlmp -u root -p dbfile > dbfile.sql
2、用rsync从新服务器获得备份的文件(SCP或WGET也可以)。
# rsync -avr root@myolddbserver:/home/mympfolder/dbfile.sql
3、登陆新服务器的mysql客户端。
# mysql -u root -p
4. 建立数据库。
mysql> create database dbfile;
5. 选择新数据库;
mysql> use dbfile;
6. 加载数据;
mysql> source dbfile.sql
或者
在Mysql程序中有我自己的一个数据库共5张表,里边数据不算太多。我现在想把他们全部弄到另一台电脑中去,该怎么弄,如果不用其它的软件工具,只用Mysql自已的程序不知可否?
注:不用考虑操作系统。
---------------------------------------------------------------
在dos命令提示符下使用mysqlmp命令进行备份.
如下:
C:\Documents and Settings\Administrator>mysqlmp yinshi >c:\\backup.txt -uroot
-p12142022
说明:yinshi是我的数据库名,里面有5张表; c:\\backup.txt 是我备份出来文件名和路径;
-u,-p参数后面跟的分别是用户名和密码.
将你备份出来的文件我这里是backup.txt拷贝到另一台机上,再在dos命令提示符下用mysql命令,进行恢复,如下:
C:\Documents and Settings\Administrator>mysql < c:\\backup.txt -uroot -p12142022
or
mysql>source backup.txt;(这里backup.txt在放在data目录下)
---------------------------------------------------------------
如果另一台机器上也安装了mysql,可以直接导入
C:\mysql\bin>mysqlmp -h172.20.6.250 -udeveloper -p123456 --opt server_databasename | mysql -hlocalhost -uroot -C obj_databasename
172.20.6.250源服务器ip
developer源服务器连接用户名
---------------------------------------------------------------
有两种办法。
1、在B机器上装mysql。
将A机器上的mysql/data下的你的数据库目录整个拷贝下来。
将B机器上的mysql服务停止。
找到B机器上的mysql/data目录,将你拷贝的目录粘贴进去,然后启动mysql服务就可以了。
2、使用SQL语句备份和恢复
你可以使用SELECT INTO OUTFILE语句备份数据,并用LOAD DATA INFILE语句恢复数据。这种方法只能导出数据的内容,不包括表的结构,如果表的结构文件损坏,你必须要先恢复原来的表的结构。
语法:
SELECT * INTO {OUTFILE | DUMPFILE} ’file_name’ FROM tbl_name
LOAD DATA [LOW_PRIORITY] [LOCAL] INFILE ’file_name.txt’ [REPLACE | IGNORE]
INTO TABLE tbl_name
SELECT ... INTO OUTFILE ’file_name’