今天只是想發表個感慨,同時將這部分教訓寫出來,讓你們有個經驗,很簡單的mysql數據庫搭建,網上有不少安裝教程,不用多說。mysql
我只是把我安裝後遇到的問題寫出來,給本身提個醒,MySQL數據庫裝完以後(是卸載刪除了之前的mysql重裝的),我就直接啓動mysql服務,service mysql restart ,發現報出以下錯誤。linux
[root@localhost mysql]# service mysql restart
MySQL server PID file could not be found! [FAILED]
Starting MySQL...The server quit without updating PID file [FAILED]ysql/localhost.localdomain.pid).
這是第一次報錯,很明顯和你們想的同樣,確定是端口或進程佔用神馬的,執行ps -ef|grep mysqlsql
[root@localhost mysql]# ps -ef |grep mysql
root 4084 1 1 14:06 pts/0 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/localhost.localdomain.pid
mysql 4407 4084 6 14:06 pts/0 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/localhost.localdomain.err --pid-file=/data/mysql/localhost.localdomain.pid --socket=/data/mysql/mysql.sock --port=3306
root 4437 2771 0 14:06 pts/0 00:00:00 grep mysql
發現進程果真沒清乾淨,有殘留, 很簡單 直接kill -9 4437 (進程號)幹掉,當時服務就正常啓動了數據庫
後面我要配置MySQL主從數據庫,這塊網上也有不少參考,當時配置完成後直接就重啓服務,開始驗證主從關係,當時發現從庫開啓 start slave ,show slave status\G ,發現I/O進程爲NO ,很明顯我發現確定是my.cnf主從配置文件哪裏出了錯,當時也是心急,估計是某個鍵按錯,還自覺得是對的,沒有細細覈對,接着我就reboot 從庫,就出現了後面mysql 沒法啓動dom
這是也是如你們同樣,網上查找方案和相似案例,kill 進程,關閉selinux 查看數據目錄權限等socket
從新設置數據權限:chown mysql.mysql /data/mysql/,問題依舊存在,ide
打開日誌 經驗不足,覺得錯誤就顯示在近期時間 (這是個人習慣***錯誤習慣,勿要學習)學習
tail -30 /data/mysql/localhost.localdomain.err (日誌文件路徑依狀況而定),ui
160428 13:18:04 [Note] Shutting down plugin 'MEMORY'
160428 13:18:04 [Note] Shutting down plugin 'MRG_MYISAM'
160428 13:18:04 [Note] Shutting down plugin 'mysql_old_password'
160428 13:18:04 [Note] Shutting down plugin 'mysql_native_password'
160428 13:18:04 [Note] Shutting down plugin 'binlog'
160428 13:18:04 [Note] /usr/local/mysql/bin/mysqld: Shutdown completeatom
160428 13:18:04 mysqld_safe mysqld from pid file /data/mysql/localhost.localdomain.pid ended
160428 13:19:43 mysqld_safe Starting mysqld daemon with databases from /data/mysql
160428 13:19:43 InnoDB: The InnoDB memory heap is disabled
160428 13:19:43 InnoDB: Mutexes and rw_locks use GCC atomic builtins
160428 13:19:43 InnoDB: Compressed tables use zlib 1.2.3
160428 13:19:43 InnoDB: CPU supports crc32 instructions
160428 13:19:43 InnoDB: Initializing buffer pool, size = 128.0M
160428 13:19:43 InnoDB: Completed initialization of buffer pool
160428 13:19:43 InnoDB: highest supported file format is Barracuda.
160428 13:19:43 InnoDB: 128 rollback segment(s) are active.
160428 13:19:43 InnoDB: Waiting for the background threads to start
160428 13:19:44 InnoDB: 1.2.4 started; log sequence number 1603097
160428 13:19:44 [ERROR] /usr/local/mysql/bin/mysqld: unknown variable 'lob-bin=mysql=bin'
160428 13:19:44 [ERROR] Aborting
160428 13:19:44 [Note] Binlog end
160428 13:19:44 [Note] Shutting down plugin 'partition'
160428 13:19:44 [Note] Shutting down plugin 'PERFORMANCE_SCHEMA'
160428 13:19:44 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN_COLS'
160428 13:19:44 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN'
160428 13:19:44 [Note] Shutting down plugin 'INNODB_SYS_FIELDS'
160428 13:19:44 [Note] Shutting down plugin 'INNODB_SYS_COLUMNS'
160428 13:19:44 [Note] Shutting down plugin 'INNODB_SYS_INDEXES'
160428 13:19:44 [Note] Shutting down plugin 'INNODB_SYS_TABLESTATS'
160428 13:19:44 [Note] Shutting down plugin 'INNODB_SYS_TABLES'
發現 /etc/my.cnf 配置文件有處地方寫錯了 加粗顯示,當時很開心,直接就更正過來了,而後重啓發現mysql服務依舊不行,這時我就尷尬了,各類搜索,其中我發現日誌有個記錄是這個
160428 13:18:04 mysqld_safe mysqld from pid file /data/mysql/localhost.localdomain.pid ended
對着百度,谷歌就搜索,但大多解決方法無非我前面提到的幾步,在不知不覺中,我已經耗時2個多小時了,正準備重裝,突然將日誌往前面多翻了幾行,這時發現一個error ,我欣喜半天
160428 11:05:35 [ERROR] /usr/local/mysql/bin/mysqld: unknown variable 'replucate-ignore-db=mysql'
160428 11:05:35 [ERROR] Aborting
發現單詞寫錯了,真是2的不幸啊, 更正過來以後,全都正常啓動了
此次記錄只爲對本身粗枝大葉提個醒!!!!
正常啓動以下:
[root@localhost ~]# !se
service mysql restart
Shutting down MySQL.. [ OK ]
Starting MySQL.. [ OK ]