<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    一江春水向東流

    做一個有思想的人,期待與每一位熱愛思考的人交流,您的關注是對我最大的支持。

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      44 隨筆 :: 139 文章 :: 81 評論 :: 0 Trackbacks
    問題的產生:在已有的Red Hat Enterprise Linux AS 3.0系統上已經運行了一套web程序,使用Mysql4, tomcat41, 現在又要求安裝一套新程序,依舊使用該tomcat41, 但數據庫變為mysql5

    注意事項:
    新的程序需要注意字符集的問題,
    1)具體數據庫的權限和分組問題,
    2)mysql5下的具體數據庫從windows直接拷貝到Linux下不好使的問題,
    3)以及mysql5需要設置密碼的問題,
    4)mysql5在linux下對數據庫區分大小寫的問題。
    5) mysql在終端進入
    ?? mysql>
    ?? 時的用戶名和密碼問題

    此外,在具體安裝mysql5的過程中,要注意將mysql5的安裝位置(baseDir),數據庫的具體存放位置(dataDir),端口號(改為3307),進行修改,這樣才能保證兩個不同版本的數據庫的同時運行。

    版本號:
    MySQL v4.0.24
    (1)MySQL-server-4.0.24-0.i386.rpm
    (2)MySQL-client-4.0.24-0.i386.rpm
    (3)MySQL-devel-4.0.24-0.i386.rpm
    MySQL 5.0.51a
    mysql-5.0.51a.tar.gz
    下載地址:http://ftp.ntu.edu.tw/pub/MySQL/Downloads/MySQL-5.0/mysql-5.0.51a.tar.gz

    安裝MySQL v4.0.24
    #rpm -qa | grep sql
    查詢系統是否默認安裝了mysql服務器
    然后卸載系統默認安裝的mysql
    卸載mysql命令如下:
    #rpm -e --nodeps mysql-3.23.58-1

    安裝MySQL服務端:
    #rpm -ivh MySQL-server-4.0.24-0.i386.rpm
    測試服務端是否安裝成功:
    #netstat -nat
    查看端口3306是否打開
    然后安裝MySQL客戶端
    #rpm -ivh MySQL-client-4.0.24-0.i386.rpm
    安裝MySQL連接包:
    #rpm -ivh MySQL-devel-4.0.24-0.i386.rpm
    此時Mysql4的各個安裝路徑如下:
    以我們在Redhat下安裝的MySQl4.0.26數據庫為例:
    (注意事項:rpm包使用的都是默認的設置,不能更改,以下均為默認設置)
    1.配置文件:/etc/my.cnf
    2.數據庫目錄:/var/lib/mysql
    3.啟動腳本:/etc/rc.d/init.d/mysql
    4.端口3306
    5..socket文件/tmp/mysql.socket
    ——————————————————————————————————————

    下面安裝MySQL 5.0.51a

    由于我們安裝的MySQL4.0.26的安裝包類型是rpm包,所以,需要大家注意的是,
    它使用的都是默認的設置,安裝后生成的配置文件和數據庫目錄等等一系列的配置都是我們不能改變的。
    因此,如果要在同一開發環境下安裝兩個數據庫的話,我們就必須處理以下這些問題:
    1.配置文件安裝路徑不能相同
    2.數據庫目錄不能相同
    3.啟動腳本不能同名
    4.端口不能相同
    5..socket文件的生成路徑不能相同
    依據上面的各種要求:mysql5.0.51a.tar.gz的源碼包安裝做出以下調整:
    --prefix=/usr/local/mysql5? ### 數據庫安裝目錄
    --localstatedir=/var/lib/mysql5? ### 數據庫存放目錄
    --with-charset=gbk --with-collation=gbk_chinese_ci --with-extra-charsets=all ### 字符集gbk加載和gbk_chinese_ci加載,可處理中文亂碼問題
    其他的設置是對數據庫的一下優化,在此就不再贅述。

    參考了一些msyql5的安裝文檔,在這里感謝各位前輩
    mysql-5.0.51a.tar.gz解壓后的安裝詳解:

    1# cd mysql-5.0.51a
    2# mkdir /usr/local/mysql5

    (這步驟中的諸多參數中,關鍵的參數已經在前面介紹了,如有不懂,請參看前面的介紹。)
    3# ./configure
    --prefix=/usr/local/mysql5
    --localstatedir=/var/lib/mysql5 --with-comment=Source??
    --with-server-suffix=-Community
    --with-mysqld-user=mysql
    --without-debug
    --with-big-tables
    --with-charset=gbk --with-collation=gbk_chinese_ci --with-extra-charsets=all
    --with-pthread
    --enable-static
    --enable-thread-safe-client
    --with-client-ldflags=-all-static
    --with-mysqld-ldflags=-all-static
    --enable-assembler
    --without-innodb
    --without-ndb-debug
    4# make
    5# make install

    6.# useradd mysql //添加 mysql 用戶
    7# cd /usr/local/mysql5
    (注意:!!!在安裝第二個數據庫時候,雖然在./configure后加上了--localstatedir=/var/lib/mysql5但是并未在/var/lib下產生mysql5目錄,所以我們要在源碼包編譯安裝完成之后先檢查一下是否有這個目錄,如果沒有的話一定要手動創建一個 命令:# mkdir /var/lib/mysql5再執行第八步驟。)
    8# bin/mysql_install_db --user=mysql
    (在確保第七步驟正確完成之后,在執行本步驟時,如果正確的話,在/var/lib/mysql5下將會產生相應的數據庫文件。)
    9# chown -R root:mysql .       //設置權限,注意后面有一個 "."
    10# chown -R mysql /var/lib/mysql5   //設置 mysql 目錄權限
    11# chgrp -R mysql .          //注意后面有一個 "."
    12# cp share/mysql/my-huge.cnf /etc/my5.cnf
    13# cp share/mysql/mysql.server /etc/rc.d/init.d/mysql5 //開機自動啟動 mysql。
    14# chmod 755 /etc/rc.d/init.d/mysql5
    15# chkconfig --add mysql5

    16以下是安裝第二個數據庫時,對啟動文件mysql5和配置文件my5.cnf做出的必要修改。
    ===================================================================================
    /etc/rc.d/init.d/mysql5

    修改下面的內容:

    1.datadir=/var/lib/mysql5
    2.conf=/etc/my5.cnf
    3.把"$bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &"替換為(雙引號中的)
    "$bindir/mysqld_safe --defaults-file=/etc/my5.cnf --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &"(雙引號中的)
    ===================================================================================
    /etc/my5.cnf

    修改下面的內容:

    port = 3307 ###修改相關的端口
    socket文件生成路徑

    把[client]和[mysqld]中的port號都改成3307,
    socket = /tmp/mysql.sock改成socket = /tmp/mysql5.sock
    [client]
    #password = your_password
    port? = 3307
    socket? = /tmp/mysql5.sock

    # Here follows entries for some specific programs

    # The MySQL server
    [mysqld]
    port? = 3307
    socket? = /tmp/mysql5.sock
    ==================================================================================
    17# /etc/rc.d/init.d/mysql5 start           //啟動 MySQL
    18# bin/mysqladmin -u root password "password_for_root" ### 設置數據庫JDBC連接的密碼
    ??? 注意事項:此密碼與從終端客戶端登陸數據庫的密碼是否為同一密碼,還存在疑問。
    ????????????? 設置終端客戶端登陸數據庫的密碼:(默認設置:用戶名:root 密碼:(空))
    19# cd /usr/local/mysql5/bin(進入數據庫安裝目錄下執行以下命令)
    20# ./mysql -u root -p (登陸數據庫,以mysql>開頭均屬數據庫內的操作,注意不要丟掉分號
    mysql> use mysql;

    mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
    mysql> FLUSH PRIVILEGES;
    mysql> exit;
    21# service mysql5 stop               //關閉 MySQL

    22tomcat部署文件下的修改:
    修改/usr/tomcat/jetmambo/WEB-INF/classes/jdbc.properties
    1.3306改成3307
    2.jdbc.password=system(注意事項:這個密碼就是數據庫JDBC連接的密碼)

    修改后如下:
    jdbc.driverClassName=com.mysql.jdbc.Driver
    jdbc.url=jdbc:mysql://localhost:3307/timef3_cmd?&useUnicode=true&characterEncoding=gbk
    jdbc.username=root
    jdbc.password=system

    23啟動數據庫和WEB服務器,驗證數據庫安裝是否成功
    /etc/init.d/mysql restart
    /etc/init.d/mysql5 restart
    注意事項:必須保持兩個數據庫都開啟服務,否則tomcat報SQLException
    /usr/tomcat/bin/catalina.sh run

    補充說明:

    24linux下默認數據庫中表名不忽略大小寫,做如下設置:
    /etc/my5.cnf

    # The MySQL server
    [mysqld]
    lower_case_table_names = 1 ### 1為忽略大小寫 0為不忽略大小寫
    port? = 3307
    socket? = /tmp/mysql5.sock

    ————————————————————————————————————
    遺留問題,不知那位大俠可以解答一下:
    在終端進入
    >mysql時
    報:
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
    錯誤。
    ----------------------------------------------------------------
    問題解決了
    http://www.javaeye.com/topic/203986
    非常感謝這篇文章

    ./mysql -uroot -p -S /tmp/mysql5.sock

    如果不加參數-S,則在默認目錄去找mysql.sock

    posted on 2008-12-23 17:05 allic 閱讀(433) 評論(0)  編輯  收藏 所屬分類: PHP+MySQL開發開源數據庫學習研究
    主站蜘蛛池模板: 亚洲av一综合av一区| 亚洲免费观看视频| 日本黄色免费观看| 免费看国产一级片| 久久精品国产亚洲av成人| 国产精品无码免费专区午夜| 国产成人精品一区二区三区免费| 91久久精品国产免费直播| 九九九精品成人免费视频| 亚洲国产天堂久久久久久| 久久久久无码精品亚洲日韩| 亚洲色大成网站WWW国产| 国产精品免费看久久久香蕉| 亚洲伊人成无码综合网 | 亚洲国产婷婷香蕉久久久久久| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 久草在视频免费福利| 亚洲国产一二三精品无码| 亚洲精品GV天堂无码男同| 在线观看片免费人成视频无码| 午夜高清免费在线观看| 亚洲AV日韩AV天堂久久| 91香蕉国产线观看免费全集| 亚洲精品无码激情AV| 久久九九免费高清视频| 日本一区免费电影| fc2免费人成在线视频| 亚洲AV中文无码字幕色三| 很黄很黄的网站免费的| 亚洲一区精品中文字幕| 高清免费久久午夜精品| 亚洲AV无码乱码国产麻豆穿越 | 在线播放国产不卡免费视频| 亚洲国产精彩中文乱码AV| yy一级毛片免费视频| 国产三级免费观看| 中文字幕久无码免费久久| 亚洲一区视频在线播放 | 国产亚洲精品免费| 日本免费人成网ww555在线| 亚洲中文无码卡通动漫野外|