溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mysql 數(shù)據(jù)庫(kù)的安裝之一 源碼安裝

發(fā)布時(shí)間:2020-06-30 14:00:26 來(lái)源:網(wǎng)絡(luò) 閱讀:345 作者:ahtornado 欄目:數(shù)據(jù)庫(kù)

MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQL AB 公司開(kāi)發(fā),目前屬于 Oracle 旗下產(chǎn)品。MySQL 最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在 WEB 應(yīng)用方面MySQL是最好的 應(yīng)用軟件之一.

mysql 數(shù)據(jù)庫(kù)安裝方式有多種,本文介紹源碼安裝

系統(tǒng)環(huán)境:

Linux mysql 2.6.32-642.6.1.el6.x86_64 #1 SMP Wed Oct 5 00:36:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

[root@mysql ~]# cat /etc/redhat-release 

CentOS release 6.8 (Final)

  1. 創(chuàng)建用戶和組

groupadd mysql

useradd mysql -g mysql -M -s /sbin/nologin

[root@mysql ~]# id mysql

uid=502(mysql) gid=502(mysql) 組=502(mysql)

2.解壓源碼并編譯安裝

tar xf mysql-5.1.72.tar.gz

cd mysql-5.1.72

#編譯

./configure \

--prefix=/application/mysql5.1.72 \

--with-unix-socket-path=/application/mysql5.1.72/tmp/mysql.sock \

--localstatedir=/application/mysql5.1.72/data \

--enable-assembler \

--enable-thread-safe-client \

--with-mysqld-user=mysql \

--with-big-tables \

--without-debug \

--with-pthread \

--enable-assembler \

--with-extra-charsets=complex \

--with-readline \

--with-ssl \

--with-embedded-server \

--enable-local-infile \

--with-plugins=partition,innobase \

--with-mysqld-ldflags=-all-static \

--with-client-ldflags=-all-static 


make && make install

3.做軟鏈接

ln -s /application/mysql5.1.72/ /application/mysql

ll /application/mysql

-------------------------------

重要:如果mysql不是和apache部署在同一臺(tái)電腦上,到此結(jié)束。

-------------------------------

4.數(shù)據(jù)庫(kù)的初始化

cd /tools/mysql-5.1.72

 ls support-files/my*.cnf           #顯示mysql 配置文件

cd support-files

cp my-small.cnf /etc/my.cnf         #copy 配置文件


mkdir -p /application/mysql/data    #  建立mysql數(shù)據(jù)文件存放目錄


chown -R mysql:mysql /application/mysql  #授權(quán)Mysql 用戶能訪問(wèn)mysql 的安裝目錄


ll /application/mysql/data


/application/mysql/bin/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data --user=mysql

#出現(xiàn)2個(gè)OK,表示成功


ll /application/mysql/data


#######################################

------------------------------------------------

vim /etc/init.d/mysqld

basedir=/application/mysql                          


datadir=/application/mysql/data                    

------------------------------------------------

#######################################

5.copy啟動(dòng)文件

cd /tools/mysql-5.1.72/support-files

cp mysql.server  /etc/init.d/mysqld


6.加入開(kāi)機(jī)自啟動(dòng)

chkconfig mysqld on

啟動(dòng)mysql數(shù)據(jù)庫(kù)

/etc/init.d/mysqld start   (/application/mysql/bin/mysqld_safe &     這個(gè)命令也可以啟動(dòng)mysql)

 如果啟動(dòng)失敗則執(zhí)行下面命令:

ps -ef |grep mysql   #查看Mysql 進(jìn)程是否在運(yùn)行,如果在的話,啟動(dòng)前要Kill  或者  mysqladmin shutdown

然后再啟動(dòng)mysql

[root@mysql ~]#mysql

出現(xiàn)下面錯(cuò)誤:

#-bash:mysql:command not found

mysql 對(duì)應(yīng)的路徑不在path目錄下面

使用全路徑進(jìn)入mysql:

/application/mysql/bin/mysql

或者在文件最后加上:

vi /etc/profile

PATH="/application/mysql/bin/:$PATH"

[root@mysql ~]#. /etc/profile   #使之生效


#設(shè)置密碼,不要在mysql>  下面設(shè)置密碼,在#后面設(shè)置密碼

/application/mysql/bin/mysqladmin -u  root password 'passwd123'

#重新登錄,輸入用戶名和密碼


mysql -u root -p

passwd123


7.數(shù)據(jù)優(yōu)化:

select version();         #查看數(shù)據(jù)庫(kù)版本

select user();            #查看當(dāng)前的用戶

mysql> show databases;    #查看數(shù)據(jù)庫(kù)

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| test               |

+--------------------+


mysql>drop database test; #安全設(shè)置,刪除沒(méi)有用的數(shù)據(jù)庫(kù)

最終優(yōu)化為:

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

+--------------------+

mysql> select user,host from mysql.user;  #查詢表中的用戶

+------+-----------+

| user | host      |

+------+-----------+

| root | 127.0.0.1 |

|      | localhost |

| root | localhost |

|      | weblamp   |

| root | weblamp   |

+------+-----------+

drop user ""@weblamp;  #刪除主機(jī)名是weblamp,用戶名=""。

mysql> drop user ""@localhost;

mysql> drop user "root"@weblamp;

最終優(yōu)化為:

mysql> select user,host from mysql.user;

+------+-----------+

| user | host      |

+------+-----------+

| root | 127.0.0.1 |

| root | localhost |

+------+-----------+


如果刪除不了,就使用delete 刪除。


delete from mysql.user where(host="weblamp");

最后刷新:

flush privileges;


#如果忘記登錄密碼,可以使用這個(gè)跳過(guò)登錄密碼的輸入

/application/mysql/bin/mysqld_safe --skip-grant-table &  

#修改密碼

mysql>update mysql.user set password=PASSWORD("oldboy123") where host='localhost' and  user='root';

 flush privileges;


[root@mysql ~]#lsof -i :3306  #查看3306端口現(xiàn)在運(yùn)行的情況


#查看mysql 的日志

cat /application/mysql/data/oldboy.err  


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI