本文目錄一覽:
- 1、linux下 安裝mysql 問題
- 2、Linux下 MYSQL問題
- 3、linux mysql遇到的問題
- 4、請幫忙分析Linux下mysql啟動不起來的原因
- 5、Linux中mysql服務經常自動停止,求大神解決!!
linux下 安裝mysql 問題
因為mysql程序在啟動的時候 非常依賴my.cnf裡面的配置,而my.cnf文件中的配置,在執行mysql初始化的時候就可以手動指定。
如果mysql不是使用yum安裝,而是將mysql安裝到自定義的目錄下時,在啟動mysql、連接mysql的時候 都要指定my.cnf文件。或者 將my.cnf文件放到/etc下(這是因為mysql尋找my.cnf文件時首先會從/etc/my.cnf開始,然後/etc/mysql/my.cnf–》/usr/local/mysql/etc/my.cnf–》~/.my.cnf—》最後是自定義路徑)
下面是我自己在linux上安裝了一遍的過程,你可以參考一下。
軟件包
[root@hilodbtool soft]# ls mysql-5.5.45-linux2.6-i686.tar.gz
mysql-5.5.45-linux2.6-i686.tar.gz
解壓修改屬組
tar -zxf mysql-5.5.45-linux2.6-i686.tar.gz
cd mysql-5.5.45-linux2.6-i686
chown -R mysql.mysql ./*
[root@hilodbtool mysql-5.5.45-linux2.6-i686]# ls
bin COPYING data docs include INSTALL-BINARY lib man mysql-test README scripts share sql-bench support-files
關於手動創建my.cnf
因為mysql程序在啟動的時候十分依賴my.cnf文件,目前我的本機上已經安裝了一個mysql,ect/my.cnf已經存在,所以手動創建一個my.cnf作為新建mysql的cnf文件
mkdir -p /hilodb/soft/mysql
mkdir -p /var/run/mysqld
chown -R mysql.mysql /hilodb/soft/mysql
chown -R mysql.mysql /var/run/mysqld
cat /tmp/my.cnf EOF
[mysqld]
basedir=/hilodb/soft/mysql-5.5.45-linux2.6-i686
datadir=/hilodb/soft/mysql
socket=/hilodb/soft/mysql/mysql.sock
user=mysql
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/hilodb/soft/mysql/mysqld.pid
socket=/hilodb/soft/mysql/mysql.sock
[mysql]
socket=/hilodb/soft/mysql/mysql.sock
[client]
port= 3306
socket= /hilodb/soft/mysql/mysql.sock
EOF
初始化數據庫
cd mysql-5.5.45-linux2.6-i686
scripts/mysql_install_db –user=mysql –defaults-file=/tmp/my.cnf
centos6.8 64bit環境下啟動的時候報
[root@hilodbtool bin]# ./mysqld_safe –help
./mysqld_safe: ./my_print_defaults: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
./mysqld_safe: ./my_print_defaults: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
處理上面的報錯
yum install glibc.i686
yum install libgcc.i686
yum install libaio*.i686*
yum install ncurses-*.i686*
啟動數據庫
cd /hilodb/soft/mysql-5.5.45-linux2.6-i686/bin
./mysqld_safe –defaults-file=/tmp/my.cnf –ledir=/hilodb/soft/mysql-5.5.45-linux2.6-i686/bin/
進入數據庫
cd /hilodb/soft/mysql-5.5.45-linux2.6-i686/bin
./mysql –defaults-file=/tmp/my.cnf
修改root密碼
SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘oracle’);
flush privileges;
***************登錄報錯 ###也就是處理socket的問題 ***************
[root@hilodbtool bin]# mysql -uroot -poracle
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
登錄報錯
兩種解決方法
第一種
ln -s /hilodb/soft/mysql/mysql.sock /tmp/mysql.sock
第二種
因為mysql程序搜索my.cnf的順序
/etc/my.cnf
/etc/mysql/my.cnf
/usr/local/mysql/etc/my.cnf
~/.my.cnf
其他自定義路徑下的my.cnf,例如:/data/mysql/yejr_3306/my.cnf
所以替換/etc/my.cnf
cp /tmp/my.cnf /etc/
cp: overwrite `/etc/my.cnf’? y
rm -rf /tmp/mysql.sock
再次登錄成功
mysql -uroot -poracle
mysql
修改環境變量
將一下內容 添加到 /etc/profie 最後
export PATH=/hilodb/soft/mysql-5.5.45-linux2.6-i686/bin:$PATH
然後在終端執行 source /etc/profile 使環境變量生效
which mysql
[root@hilodbtool ~]# which mysql
/hilodb/soft/mysql-5.5.45-linux2.6-i686/bin/mysql
登錄測試
Linux下 MYSQL問題
當前目錄不在$PATH里。
你用絕對路徑試試看。
樓上回答正確。我沒注意到已經有人回答,不小心撞車了!
linux mysql遇到的問題
請問你不能登錄的操作不是在從服務器上操作的吧?
有可能是ip的限制。默認只有在本機允許root用戶登錄。
請幫忙分析Linux下mysql啟動不起來的原因
以下錯誤日誌提示,都是查看 MySQL 錯誤日誌得到,查看方法如下:
查看下 MySQL 配置文件 my.cnf 中有記錄,日誌記錄在/log/mysql/error.log下
?MySQL 配置文件 my.cnf 權限問題導致無法啟動,錯誤提示:World-writable config file ‘/etc/my.cnf’ is ignored
?Binlog 丟失導致無法啟動,錯誤日誌: File ‘./mysql-bin.000001’ not found
?Binlog 無法讀取導致無法啟動,錯誤日誌:Failed to open log (file ‘./mysql-bin.000001’, errno 13)
?不能創建 PID 導致無法啟動,錯誤日誌:Can’t start server: can’t create PID file: No such file or directory
?不能創建臨時文件導致無法啟動,錯誤日誌:mysqld: Can’t create/write to file ‘/tmp/ibfguTtC’ (Errcode: 13)
?MySQL 服務無法識別導致無法啟動,錯誤提示:mysqld: unrecognized service
?MySQL 配置了過大的內存導致無法啟動,錯誤日誌:InnoDB: Cannot allocate memory for the buffer pool
?MySQL 啟動參數過多導致無法啟動,錯誤提示:Too many arguments (first extra is ‘start’)
?MySQL 目錄權限問題導致無法啟動,錯誤日誌:File ‘./mysql-bin.index’ not found (Errcode:13 – Permission denied)
?MySQL 未初始化導致無法啟動,錯誤提示:can’t open the mysql.plugin table
?MySQL 啟動成功但未監聽端口
?MySQL ibdata1權限問題導致無法啟動,錯誤日誌:InnoDB Operating system error number 13 in a file operation
?磁盤空間滿導致 MySQL 無法啟動
?進程殘留導致 MySQL 無法啟動
?MySQL 服務自動停止
這些是錯誤提示你對照去找你的原因就這麼多了
Linux中mysql服務經常自動停止,求大神解決!!
分析原因一:Mysql的自動備份功能可能導致數據庫在備份的時候先關閉服務,而在此啟動的時候服務器不響應,
開始-運行-services.msc,打開windows服務找到mysql的服務並雙擊,點擊恢複選項卡,第一次失敗:默認是“不操作”,改成”重新啟動服務”。
在下方的“重新啟動服務:分鐘後”添上“0”表示如果服務意外終止則立即重啟動。點擊確定使設置生效。這時候你在任務管理器里結束mysql-nt進程,會發現結束不掉,不過要注意,這樣mysql.exe是停不了的,如果要停必須把剛才修改的改回來.)
分析原因二,可能是mysql連接問題
修改mysql的最大連接數, 使用內存變量修改法修改mysql的最大連接數
步驟如下(同時適用windows和linux平台):
a、客戶端登錄mysql,輸入用戶名和密碼’b、在mysql命令提示符下設置新的最大連接數為500:mysql set global max_connections=500
c、顯示當前運行的query:mysql show processlist
d、顯示當前mysql 系統參數狀態:mysql show status# k;
e、退出客戶端:mysql exit’
查看當前最大連接數只需要通過在mysqladmin所在目錄下執行以下命令:mysqladmin -username -password variables |find “max_con” 即可看到。也可以使用php教程myadmin裡頭的mysql參數列表查看最大連接數。
缺點:重啟計算機或者mysql後最大連接數又會複位成初始值,需要重新設定。
2、修改my.ini或my.cnf文件法(需要重啟mysql),可參考同目錄下mysql的配置模板(小內存、大內存、超大內存). e windows系統下打開my.ini文件找到set-variable =max_connections=100這一行,改成需要設定的最大連接數,然後重啟即可。
linux控制台下:
1、打開my.cnf文件:vi /etc/my.cnf
2 在[mysqld]段下修改max_connections的值為設定值。
注意:
可能大家安裝的mysql來源和版本不同(windows下mysql+iis和php+apache+mysql套件最終安裝結果幾乎都不相同),my.ini文件的路徑可能有些不同,my.ini可能還會保留一份在c:windows目錄下需要同時修改
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/181959.html