標籤:masql 安裝
MySQL是一個關係型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL 最流行的關係型資料庫管理系統,在 WEB 應用方面MySQL是最好的 應用軟體之一.
mysql 資料庫安裝方式有多種,本文介紹源碼安裝
系統內容:
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
[[email protected] ~]# cat /etc/redhat-release
CentOS release 6.8 (Final)
建立使用者和組
groupadd mysql
useradd mysql -g mysql -M -s /sbin/nologin
[[email protected] ~]# 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部署在同一台電腦上,到此結束。
-------------------------------
4.資料庫的初始化
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資料檔案存放目錄
chown -R mysql:mysql /application/mysql #授權Mysql 使用者能訪問mysql 的安裝目錄
ll /application/mysql/data
/application/mysql/bin/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data --user=mysql
#出現2個OK,表示成功
ll /application/mysql/data
#######################################
------------------------------------------------
vim /etc/init.d/mysqld
basedir=/application/mysql
datadir=/application/mysql/data
------------------------------------------------
#######################################
5.copy開機檔案
cd /tools/mysql-5.1.72/support-files
cp mysql.server /etc/init.d/mysqld
6.加入開機自啟動
chkconfig mysqld on
啟動mysql資料庫
/etc/init.d/mysqld start (/application/mysql/bin/mysqld_safe & 這個命令也可以啟動mysql)
如果啟動失敗則執行下面命令:
ps -ef |grep mysql #查看Mysql 進程是否在運行,如果在的話,啟動前要Kill 或者 mysqladmin shutdown
然後再啟動mysql
[[email protected] ~]#mysql
出現下面錯誤:
#-bash:mysql:command not found
mysql 對應的路徑不在path目錄下面
使用全路徑進入mysql:
/application/mysql/bin/mysql
或者在檔案最後加上:
vi /etc/profile
PATH="/application/mysql/bin/:$PATH"
[[email protected] ~]#. /etc/profile #使之生效
#設定密碼,不要在mysql> 下面設定密碼,在#後面設定密碼
/application/mysql/bin/mysqladmin -u root password ‘passwd123‘
#重新登入,輸入使用者名稱和密碼
mysql -u root -p
passwd123
7.資料最佳化:
select version(); #查看資料庫版本
select user(); #查看當前的使用者
mysql> show databases; #查看資料庫
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
mysql>drop database test; #安全設定,刪除沒有用的資料庫
最終最佳化為:
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; #刪除主機名稱是weblamp,使用者名稱=""。
mysql> drop user ""@localhost;
mysql> drop user "root"@weblamp;
最終最佳化為:
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;
#如果忘記登入密碼,可以使用這個跳過登入密碼的輸入
/application/mysql/bin/mysqld_safe --skip-grant-table &
#修改密碼
mysql>update mysql.user set password=PASSWORD("oldboy123") where host=‘localhost‘ and user=‘root‘;
flush privileges;
[[email protected] ~]#lsof -i :3306 #查看3306連接埠現在啟動並執行情況
#查看mysql 的日誌
cat /application/mysql/data/oldboy.err
本文出自 “知識改變命運” 部落格,請務必保留此出處http://ahtornado.blog.51cto.com/4826737/1891259
mysql 資料庫的安裝之一 源碼安裝