2007年5月4日 星期五

My first try for the MySQL

想要為公司引進 bug tracking system. 本來想用 mantis, 可是看了看不知它的一些變數是什麼東西. 看來好像要有 PHP 或 MySQL 的基礎!! 想換一個容易安裝 trac, 可是看別人的評論聽說更麻煩!
想要放棄嘛, 又覺得這個很有用! 想說, 就一點一點作好了!!
以下是我根據 MySQL 5.1 Manual Online, 在 Debian sid 上的實驗,

1. 在 Debian 中到底需不要要執行 $ mysql_install_db? 看它的套件 postinst 中有用到這個 command,
但是我不知在哪個目錄? 因為它完全沒有問我!!
2. 上網查到在 /var/lib/mysql 下, 我把它刪除, 再刪除 mysql-server 套件再重裝, 也沒有重新建立?
但我看到在
/etc/mysql/my.conf
中, 有一行
datadir =/var/lib/mysql
就是這一行指定了 database 的位址!! 所以你執行
# mysql_install_db
無論在何處執行, 它都是建立了
/var/lib/mysql/mysql/*
3. 建立 database root user 的帳號和密碼! 和 Manual 不太一樣, 我按照 # mysql_install_db 執行後的說明!!
無法執行, 會出現
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
4. 看來 mysql 也沒有 run 起來, 在 manual 上直接打 mysql 就可以跑, 但在 Debian 要打:
/etc/init.d/mysql start
有 run 起來, 可是總是在後面帶了一行:
Starting MySQL database server: mysqld already running.
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
5. 看了一下 Manual 後面的常見問題,
a) 先檢查 port 對不對!
可用
# netstat -ln|grep mysql
在 Debian, 用
# ps aux|grep mysql
也可以看到它的參數!
我確定我是用 /var/run/mysqld/myslqd.sock
但是我用
# mysql -u root test --socket=/var/run/mysqld/mysqld.sock
仍然得到
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
我再重試 user 為 debian-sys_maint 也不行
b) 執行以下指令來建立 user
# mysql -u root mysql
錯誤訊息:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
此錯誤和 Manual section 5.7.8. Causes of Access denied Errors 中下面的好像都不一樣!!
c) 我執行以下命令好像有效
# mysql -u root --password
它就要我輸入密碼, 然後進入一個 prompt
mysql >
6. 看來是進去了, 可是我無法執行
# mysqladmin version
# mysqladmin variables
這兩個指令!!
7. 有人說: 要把 /var/lib/mysql 以下的 owner 改成使用 sql 的人名, 但我改成 root 之後, 居然連
# /etc/init.d/mysql start
都失敗!!
要作別的事了, 下次待續!!

沒有留言:

佇 Linux 來看GPX 檔案

最近定定有戶外活動。使用𤆬路機 (GPS) 來記錄行過的路線。普通我記錄路線,攏是用手機仔抑是專門个𤆬路機,罕得用電腦來看。 毋過,"仙人拍鼓有時錯,跤步踏差啥人無"。有一擺我無細膩,袂記得共一擺活動的路線收煞起來,閣直接開始記錄下一擺的活動,按呢共幾落...