您好,登錄后才能下訂單哦!
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)
創(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
免責(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)容。