ubuntu 下 mysql數據庫的搭建 及 數據遷移


1、mysql的安裝

我是使用apt-get直接安裝的 :sudo apt-get install mysql-server

   sudo apt-get install mysql-client

 

2、配置mysql管理員密碼

sudo mysqladmin -u root 當前密碼 新密碼

安裝的時候貌似也沒遇到什么障礙

 

3、查看mysql的狀態

sudo netstat -tap | grep mysql

 

4、啟動/停止/重啟mysql

sudo  /etc/init.d/mysql start

sudo  /etc/init.d/mysql stop

sudo  /etc/init.d/mysql restart

操作之后 某些版本會提示可以使用 sudo  /etc/init.d/start mysql

 

5、登錄mysql server

mysql -u root -p

會提示輸入密碼(ENTER PASSWORD:)

 

6、遠程登錄mysql

mysql 主機名 -u root -p

 

7、退出mysql server

mysql> ctrl c

 

8、查看版本信息

mysql>s即\s

 

9、查看幫助

mysql>help

 

10、查看該mysql的版本 和 server的當前日期

全加上“\”

mysql>select version().current_date

 

11、如果你遇到文件權限問題,例如:權限為root 而你的用戶名為zhangsan,可以使用以下代碼更改權限:

sudo chown username target

sudo chgrp username target

 

如果是文件夾而里面的文件也是被權限控制的 可以使用sudo chown/chgrp -r username target

當然 可以使用:sudo chmod u+x target 將只讀更改為讀寫

注:username(zhangsan)  target(目標文件或者文件夾的相對路徑)

 

12、現在已經安裝配置好了mysql client及mysql server(如果安裝過程依然有問題的,可以搜索大神們的方案,強烈推薦我們強大的 www.iteye.com)

現在進行數據遷移。

因為這次我是將遠程服務器上的數據庫遷移到本地,作為內部測試開發使用,所以我選擇使用mysqldump這個工具。

 

13、連接、登錄遠程服務端

ssh 服務器名稱@具體ip地址(例如:202.108.22.5

ENTER PASSWORD:XXXXXXX

接着輸入:sudo mysql -u root -p

接着再次輸入遠程數據庫登錄密碼,至於上面那個root  也有可能是其他username

 

14、操作遠程服務端

mysql>show databases;

mysql>use 具體數據庫名稱;

mysql>show tables;

mysql>desc 具體表名稱;

mysql>select * from 具體表名稱;

操作遠程服務端,主要是為了使用戶確定需要遷移的數據庫

 

15、遠端數據庫遷出(導出)

網上一般有四種方法介紹數據庫遷移的,我個人覺得還是使用mysqldump最直接 最方便 最效率

mysqldump工具主要是進行備份 和 回復 即 導出 與 導入

shell:mysqldump -u root -p 數據庫密碼 數據庫名稱 > 具體備份路徑

例如:mysqldump -u root -p 123456  studentdata  > home/root/studentdatabak.sql

 

16、本地數據庫遷入(導入)

在本地系統中,兩種方法。我覺得第二種更好。

方法一:

shell:mysql -u root -p

mysql>show databases;

mysql>CREATE DATABASENAME(即目標數據庫,一般需要新建);

mysql>use DATABASENAME;

mysql>source 具體文件路徑(即studentdatabak.sql);

 

方法二:

shell:mysql -u root -p

mysql>show databases;

mysql>CREATE DATABASENAME(即目標數據庫,一般需要新建);

注意:新開一個終端

shell:mysqldump -u root -p 123456  studentdata < home/root/studentdatabak.sql

 

到此 就完成了遠程 mysql數據庫的遷移

 

 

上文完成了整個數據庫的遷移,但是在數據庫完整遷移之后,仍需要繼續配置。因為遠程服務端的ip變為了本地的ip。

下面,我們進行ip的具體配置。

 

1、首先,我們需要查看本地默認的3306端口是否開啟。

shell: netstat -nat

顯示如下:

 

Proto   Recv-Q    Send-Q   Local Address   Foreign Address     State

tcp          0            0           127.0.0.1          0.0.0.0:* LISTEN

 

因此,我們需要修改 etc/mysql下 my.cnf文件

找到 bind.address

將127.0.0.1  修改為本地ip地址,例如:192.168.0.100

當然,有可能my.cnf文件無法直接修改  請換到root權限進行修改

 

2、本地數據庫的開啟,大致如上文

ubuntu 下 mysql數據庫的搭建 及 數據遷移(上)  所示,在此不贅述!

 

3、賦予項目對本地數據庫的訪問權限

mysql>grant all on *.* to user_name(即jdbc里面的username)@'%' identified by 'user_password'(即jdbc里面的password);

被賦予權限的username 和 password  將能訪問mysql中的任意database和table

 

4、更改項目配置文件

有的配置在hibernate文件中,有的配置在spring中,也有配置在其他地方的。

更改其為 jdbc:mysql://192.168.0.100

 

ok,搞定了!!  

轉載請標明:

        http://fox-leon.iteye.com/blog/1313072 《

ubuntu 下 mysql數據庫的搭建 及 數據遷移(上)

http://fox-leon.iteye.com/blog/1313081

ubuntu 下 mysql數據庫的搭建 及 數據遷移(下)

 

ps:如果數據庫數據出現了中文亂碼問題,找到  etc/mysql/my.cnf 中的 client  

並添加:default-character-set=utf8

 

my.cnf文件在windows下是  my.ini 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM