Linux 各種軟體的安裝 mysql篇

2022-08-17 21:00:20 字數 4590 閱讀 2905

作為乙個長期混跡在windows圈的小白,當拿到乙個新的linux伺服器時,有點手足無措的趕腳。但是萬事開頭難嘛,just do it!

下面記錄一下自己安裝各種軟體時遇到的坑。這一篇先講mysql

安裝環境:系統是 centos7.3 64位

1:mysql

通常軟體都安裝在 /usr/local下面

wget 

#解壓tar-zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

#複製解壓後的mysql目錄

cp-r mysql-5.6.33-linux-glibc2.5-x86_64/usr/local/mysql

#新增使用者組

groupadd mysql

#新增使用者mysql 到使用者組mysql

useradd-g mysql mysql

#在mysql目錄下建立data目錄

mkdir./data   (不要忘記了有個點)

#把mysql目錄賦給mysql使用者

chown-r mysql:mysql ./

#安裝./scripts/mysql_install_db--user=mysql --datadir=/usr/local/mysql/data

cpsupport-files/mysql.server/etc/init.d/mysqld

chmod755/etc/init.d/mysqld

cpsupport-files/my-default.cnf/etc/my.cnf

#修改啟動指令碼

vi/etc/init.d/mysqld

下面這幾行好像也要在etc/my.cnf裡面改?vi /etc/my.cnf     ---20181227留

#修改項:

basedir=/usr/local/mysql/

datadir=/usr/local/mysql/data/

log-error = /usr/local/mysql/data/error.log

pid-file = /usr/local/mysql/data/mysql.pid

user = mysql

tmpdir = /tmp

#啟動服務

service mysqld start

#加入環境變數,編輯 /etc/profile,這樣可以在任何地方用mysql命令了

exportpath=$path:/usr/local/mysql/bin

source/etc/profile

#測試連線

./mysql/bin/mysql-uroot

#關閉mysql

service mysqld stop

#檢視執行狀態

service mysqld status

------------------------------分割線

遇到的問題:

先檢視下錯誤日誌,通常是許可權問題,或者是已經存在mysqld程序,或者是/etc/my.cnf的data配置節沒弄對,或者是開啟了selinux,centos系統,缺省會開啟selinux

開啟/etc/selinux/config,把selinux=enforcing改為selinux=disabled

但是我遇到了這個問題上面的方法都沒解決,後來發現是記憶體不足導致的。。窮人啊,沒招,只好加記憶體,再重啟,問題解決。。

2:sqlyog連線時,報1130錯誤,是由於沒有給遠端連線的使用者許可權問題

解決辦法:更改 『mysql』資料庫『user』表『host』項,從『localhost』改成『%』

use mysql;

select 'host' from user where user='root';

update user set host = '%' where user ='root';

flush privileges;

\q其實這一句可以修改成這樣,

update user set host = '%' where host ='localhost';
3:sqlyog連線時,修改root密碼

mysql> update user set password=password('newpassword') where user='root';

mysql> flush privileges;//記得要這句話,否則如果關閉先前的終端,又會出現原來的錯誤

mysql> \q

4:始化mysql資料庫提示缺少data:dumper模組

fatal error: please install the following perl modules before executing /usr/local/mysql/scripts/mysql_install_db:

解決方法 :安裝autoconf庫

命令:yum-y install autoconf   //此包安裝時會安裝data:dumper模組

這篇博文參考了以下link。

5:com.mysql.jdbc.packettoobigexception: packet for query is too large

原因是mysql的max_allowed_packet設定過小引起的,我一開始設定的是1m,後來改為了20m

檢視目前配置

show variables like '%max_allowed_packet%';

可以編輯my.cnf來修改(windows下my.ini), vi /etc/my.cnf

在[mysqld]段或者mysql的server配置段進行修改。

max_allowed_packet = 20m

如果找不到my.cnf可以通過

mysql --help | grep my.cnf

去尋找my.cnf檔案.

6. can't connect to local mysql server through socket '***'

參考 解決方案:

修改「/etc/my.cnf」配置檔案,在配置檔案中新增「[client]」選項和「[mysql]」選項,並使用這兩個選項下的「socket」引數值,與「[mysqld]」選項下的「socket」引數值,指向的socket檔案路徑完全一致。如下: 

[mysqld]

datadir=/usr/local/mysql/data

socket=/usr/local/mysql/data/mysql.sock

[client]

default-character-set=utf8

socket=/usr/local/mysql/data/mysql.sock

[mysql]

default-character-set=utf8

socket=/usr/local/mysql/data/mysql.sock

修改完後,重啟mysqld服務,即可解決

7. installing mysql system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: no such file or directory

yum install -y libaio

搞定8:執行./scripts/mysql_install_db--user=mysql --datadir=/usr/local/mysql/data

報錯-bash: ./mysql_install_db: /usr/bin/perl: bad interpreter: no such file or directory

解決辦法:yum -y install perl perl-devel

Linux安裝phpstudy開啟mysql

先進入根目錄 cd 然後輸入mysql 如果你看見 命令不存在 先找到一鍵安裝phpstudy目錄下面的mysql然後找到bin 系統缺省會查詢 usr bin下的命令,如果這個命令不在這個目錄下,當然會找不到命令,我們需要做的就是對映乙個鏈結到 usr bin目錄下,相當於建立乙個鏈結檔案。首先得...

linux各種壓縮軟體包安裝軟體

linux原始碼安裝 gz壓縮包解壓安裝 1.解壓 tar zxvf filename.tar.gz 以tar.gz的壓縮包舉例 2.切換到解壓後的目錄 3.準備編譯工作 在開始安裝服務之前,需要執行configure指令碼,會自動的對當前系統進行一系列的評估,如原始檔 軟體依賴庫 編譯器 彙編器 ...

linux下各種格式軟體包的安裝

從 或是在cd rom上找到的linux軟體包,大部分為rpm tar gz tgz bz bz2等格式。下面我們編介紹一下它們的安裝方法。一 rpm格式檔案的安裝 rpm 是redhat package manager redhat軟體包管理工具 的縮寫。現在主流的linux發行版本都採用了這一公...