1. 程式人生 > >linux下的安裝mysql與遇到一些常見問題的解決方法

linux下的安裝mysql與遇到一些常見問題的解決方法

本地的安裝環境: centos6.9

1、下載

mysql官網地址:

http://dev.mysql.com/downloads/mysql/5.6.html#downloads

我是用的版本:5.6.33,通用版,linux下64位

  也可以直接複製64位的下載地址,通過命令下載:wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

2、解壓
#解壓

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
3、新增使用者組和使用者
#新增使用者組

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

useradd -g mysql mysql
4、安裝
cd /usr/local/mysql/<br>mkdir ./data/mysql

chown -R mysql:mysql ./

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

cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 
/etc/init.d/mysqld cp support-files/my-default.cnf /etc/my.cnf

#修改啟動指令碼

vi /etc/init.d/mysqld

#修改項:

basedir=/usr/local/mysql/

datadir=/usr/local/mysql/data/mysql

#啟動服務

service mysqld start

#測試連線

./mysql/bin/mysql -uroot



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

export PATH=$PATH:/usr/local/mysql//bin<br>source /etc/profile

#啟動mysql

service mysqld start

#關閉mysql

service mysqld stop

#檢視執行狀態

service mysqld status

5、常見問題彙總:

1、[[email protected] mysql]# ./scripts/mysql_install_db --user=mysqlFATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:Data::Dumper

解決

yum -y install autoconf

2、

[[email protected] mysql]# ./scripts/mysql_install_db --user=mysqlInstalling MySQL system tables..../bin/mysqld: errorwhile loading shared libraries: libaio.so.1: cannot open sharedobject file: No such file or directory

解決:

yum -y install libaio-devel

3、

[[email protected] mysql]# service mysqld startStarting MySQL.touch: cannot touch '/var/log/mariadb/mariadb.log': No such fileordirectorychmod: cannot access'/var/log/mariadb/mariadb.log': No such fileordirectorytouch: cannot touch '/var/log/mariadb/mariadb.log': No such fileordirectorychown: cannot access'/var/log/mariadb/mariadb.log': No such fileordirectory/usr/local/mysql//bin/mysqld_safe: line 129: /var/log/mariadb/mariadb.log: No such fileordirectory/usr/local/mysql//bin/mysqld_safe: line 166: /var/log/mariadb/mariadb.log: No such fileordirectorytouch: cannot touch '/var/log/mariadb/mariadb.log': No such fileordirectorychown: cannot access'/var/log/mariadb/mariadb.log': No such fileordirectorychmod: cannot access'/var/log/mariadb/mariadb.log': No such fileordirectory/usr/local/mysql//bin/mysqld_safe: line 129: /var/log/mariadb/mariadb.log: No such fileordirectoryThe server quit without updating PID file (/var/lib/mysql/i[FAILED]0cdei5171kqskZ.pid).

解決:(我們確實是沒有/var/log/mariadb/mariadb.log 這個目錄,這個是因為你沒有指定他的配置檔案的話,他會預設找到/etc/my.cnf 這個配置檔案,因為我們修改了mysql的資料儲存目錄)、

rm -f /etc/my.cnf

4、

[[email protected] mysql]# mysql -uroot -p-bash: mysql: command not found

解決:(這個是因為/usr/local/bin目錄下缺失mysql導致,只需要一下方法建立軟連結,即可以解決)

ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

5、

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

解決1:更改 ‘mysql’資料庫‘user’表‘host’項,從‘localhost’改成‘%’。

use mysql;
select 'host' from user where user='root'; 
update user set host = '%' where user ='root';
flush privileges; 

解決2:直接授權

GRANT ALL PRIVILEGES ON *.* TO ‘root’@'%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;

6、

-bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: 沒有那個檔案或目錄

解決:

yum -y install perl perl-devel

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 -y install libaio-devel

8、

環境變數配置位置:

vi + /etc/profile

9.遠端訪問時要關閉防火牆或者開啟mysql的埠,如果用的阿里雲則要在伺服器管理介面對埠進行設定,而不是在系統內部設定

以上是在linux上安裝mysql的一些方法和注意事項,若有不足還請指正