程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> MYSQL數據庫的安裝

MYSQL數據庫的安裝

編輯:關於MYSQL數據庫
3.1 數據庫的安裝
   MySQL本身的安裝非常簡單,查看INSTALL-BINARY有詳細說明
     shell> groupadd MySQL
     shell> useradd -g mysql MySQL
     shell> cd /usr/local
     shell> gunzip < /PATH/TO/MySQL-VERSION-OS.tar.gz | tar xvf -
     shell> ln -s FULL-PATH-TO-MYSQL-VERSION-OS MySQL
     shell> cd MySQL
     shell> chown -R MySQL .
     shell> chgrp -R MySQL .
     shell> scripts/mysql_install_db --user=MySQL
     shell> chown -R root .
     shell> chown -R MySQL data
     shell> bin/mysqld_safe --user=MySQL &
  安裝完MySQL後如需要添加到Linux啟動後自啟動服務列表中要做如下的配置
  首先將MySQL安裝路徑下的support-files/my-medium.cnf copy到 /etc/my.cnf
  命令如下
  cp support-files/my-medium.cnf /etc/my.cnf
  其次將support-files/mysql.server copy到/etc/rc.d/init.d/MySQL
  命令如下
  cp support-files/mysql.server /etc/rc.d/init.d/MySQL
 
  修改/etc/rc.d/init.d/MySQL
  basedir=/usr/local/system/mysql/ (改為MySQL的安裝路徑)
    datadir=/usr/local/system/mysql/data/(改為MySQL的安裝路徑下的data)
   
    然後
    /sbin/chkconfig --add MySQL
   
    運行
    service MySQL start/stop/restart OK!!!!!!!!!!
   
    STOPPING server from pid file /var/run/mysqld/MySQLd.pid
   
    Can't open and lock privilege tables: Table 'MySQL.host' doesn't exist
   
    chmod +777 log/
   
    mysql啟動提示mysql.host 不存在,啟動失敗【問題已經解決】我將s9當眾原來的mysql4.0刪除後,重新裝了個MySQL5.0,啟動過程中報一下錯誤,啟動失敗,查了一下群裡面的老帖子也沒有個具體的明確說明,
error 日志當中的記錄:[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist看到這種情況只能自己解決問題了按照MySQL的安裝步驟:
shell> groupadd MySQL
shell> useradd -g mysql MySQL
shell> gunzip < MySQL-VERSION.tar.gz | tar -xvf -
shell> cd MySQL-VERSION
shell> ./configure --prefix=/usr/local/MySQL
shell> make
shell> make install
shell> scripts/mysql_install_db --user=MySQL
shell> chown -R root  /usr/local/MySQL
shell> chown -R mysql /usr/local/MySQL/var
shell> chgrp -R mysql /usr/local/MySQL
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> /usr/local/mysql/bin/mysqld_safe --user=mysql &這樣標准進行下來是沒有問題的,但在最後一步啟動MySQL的時候我希望將數據庫的數據文件放在另外一個目錄下面,啟動命令修改為:
shell>/usr/local/mysql/bin/mysqld_safe --user=mysql --log-error=/u01/mysql/mysql_error/error --datadir=/u01/MySQL/data這個時候就出現問題了, 因為在進行初始化數據庫權限表的那一步的時候默認創建的權限表在默認目錄/usr/local/mysql/var下面,這就造成了,上面的錯誤無法找到權限表:Can't open and lock privilege tables: Table 'MySQL.host' doesn't exist解決辦法 在運行初始化權限表的時候使用增加參數--datadir ,命令格式為:
shell> scripts/mysql_install_db --user=mysql --datadir=/u01/MySQL/data
這樣問題就解決了。
這樣問題同樣也會出現 你將自己的數據庫的數據文件修改為別的目錄的時候,因為你沒有在相應的目錄下創建數據庫權限表,解決辦法就是你重新運行MySQL_install_db 文件,重新生成數據庫權限表,但是相應的你也要重新建裡用戶,以及設置權限; 第二個辦法應該將老的權限表的文件拷貝倒相應數據庫表對應的目錄先即可,但是第二個辦法我沒有用過只是根據自己的想象猜的。如果有高手請給確認一下是否正確
GRANT ALL PRIVILEGES ON *.* TO aaaa@"%" IDENTIFIED BY 'aaaa' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO aaaa@localhost IDENTIFIED BY 'aaaa' WITH GRANT OPTION;
update MySQL.user set password=PASSWord('!13432') where user='root';
flush privileges;MySQL5.1.45安裝參數設置
./configure \
--prefix=/usr/local/system/MySQL \
--with-extra-charsets=all \
--with-plugins=innobase
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved