❶ linux怎麼安裝mysql5.7
第一步:下載mysql
在Linux終端使用wget命令下載網路資源:網站自己網路找!(也可在windows中下載後傳輸到Linux)
第二步:解壓文件
由於我是在我本機software目錄中下載的文件,為了方便管理首先將此文件移動到/usr/local 目錄下
mv /software/mysql-5.7.17-linux-glibc2.5-x86_64.tar /usr/local
接下來去到移動後的目錄cd /usr/local ,然後解壓 tar zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar
解壓後為了方便後面操作可把解壓後文件名修改為mysql:mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql
第三步:配置啟動文件
去到之前解壓後並改名為mysql的目錄下會有以下文件
然後去到support-files目錄下
1、復制my.cnf 到 /etc/my.cnf (mysqld啟動時自動讀取)
cp my-default.cnf /etc/my.cnf
注意:如果你在安裝時Linux虛擬機時同時安裝了默認的mysql,此時操作以上步驟,終端將會提示你文件已存在是否覆蓋,輸入yes覆蓋即可。
2、配置資料庫編碼
vi /etc/my.cnf
在這份文件中可以添加以下配置信息(如果有修改即可)
[mysql]
default-character-set=utf8
[mysqld]
default-storage-engine=INNODB
character_set_server=utf8
3、復制mysql.server 到/etc/init.d/ 目錄下【目的想實現開機自動執行效果】
執行命令: cp mysql.server /etc/init.d/mysql (mysql是服務名)
4、修改 /etc/init.d/mysql 參數
vi /etc/init.d/mysql
給與2個目錄位置
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
5、出於安全便利,創建一個操作資料庫的專門用戶
1)、groupadd mysql #建立一個mysql的組
2)、useradd -r -g mysql mysql #建立mysql用戶,並且把用戶放到mysql組
3)、passwd mysql #給mysql用戶設置一個密碼
4)、給目錄/usr/local/mysql 更改擁有者chown -R mysql:mysql /usr/local/mysql/
第四步:初始化 mysql 的資料庫
首先去到mysql的bin目錄
1.初始化
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
生成出一個data目錄,代表資料庫已經初始化成功
並且mysql的root用戶生成一個臨時密碼:SHNq8Qvd2g>L(最好先記錄這個臨時密碼)
2.給資料庫加密
./mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
3.啟動mysql(為了不讓進程卡主,可在啟動mysql的命令後加上&代表此進程在後台運行)
./mysqld_safe --user=mysql &
4.檢查ps -ef|grep mysql
發現有以上進程便代表啟動成功。
第五步:進入客戶端
1.登錄 ./mysql -uroot -p回車後輸入之前的臨時密碼
2.修改密碼
set password=password('新密碼');
第六步:設置遠程訪問
1,在遠程訪問之前需先配置防火牆systemctl stop firewalld.service(不推薦,可配置開通3306埠)
2,授權
mysql>grant all privileges on *.* to 遠程訪問用戶名@'%' identified by '用戶密碼';
mysql>select host,user from user; 【多出1條遠程登錄用戶記錄】
mysql>flush privileges;(刷新)
此時使用遠程機器進行訪問
解析:使用mysql -h主機ip -u用戶名 -p密碼即可進行遠程訪問
第七步:設置開機自啟動
1、添加服務mysql
chkconfig --add mysql 【mysqld -install】
2、設置mysql服務為自動
chkconfig mysql on
3、重啟查看進程
init 6
ps -ef|grep mysql
第八步:配置環境變數
為了方便操作,配置環境變數還是有必要的。
vi /etc/profile
export PATH=$JAVA_HOME/bin:/usr/local/mysql/bin:$PATH
小結:到這一步基本的配置基本就完成了。
❷ 在linux下怎麼安裝mysql資料庫
1. 安裝MySQL資料庫
先從MySQL官網下載MySQL,然後進入所下載的安裝文件所在目錄,運行如下命令進行安裝,其中MySQL-server-community-5.1.56-1.rhel5.i386.rpm為剛剛下載的MySQL資料庫伺服器的rpm包,然後使用/etc/rc.d/init.d/mysqlrestart命令重啟MySQL服務:
[root@localhost ~]# rpm -ivh MySQL-server-community-5.1.56-1.rhel5.i386.rpm
[root@localhost ~]# /etc/rc.d/init.d/mysql restart
Shutting down MySQL..[確定]
Starting MySQL..[確定]
2. 配置MySQL資料庫字元集
備註:配置MySQL資料庫字元集的目的是方便的使用資料庫,無需在每次連接的時候都要臨時設置資料庫字元集的,個人不建議採用這種方法,真正的工程項目都應該在連接資料庫時臨時設置資料庫字元集,如此才便於系統的移植,而且又不會影響資料庫伺服器中的其他資料庫的使用!
安裝完成之後,需要配置MySQL的字元集配置,首先需要查找MySQL的配置文件的位置,由於MySQL的配置文件名是以.cnf結尾的,因此可用如下命令進行查找:
[root@localhost ~]# find / -iname '*.cnf' -print
/usr/share/mysql/my-large.cnf
/usr/share/mysql/my-medium.cnf
/usr/share/mysql/my-innodb-heavy-4G.cnf
/usr/share/mysql/my-huge.cnf
/usr/share/mysql/my-small.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-large.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-medium.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-innodb-heavy-4G.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-huge.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-small.cnf
/etc/pki/tls/openssl.cnf
輸入完命令「find / -iname '*.cnf'-print」回車後,屏幕便顯示搜索到的MySQL配置文件,然後拷貝my-large.cnf、my-medium.cnf 、my-innodb-heavy-4G.cnf 、my-huge.cnf、my-small.cnf中任意的一個到/etc目錄下,並命名為my.cnf,其命令如下所示:
[root@localhost ~]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
[root@localhost ~]# vi /etc/my.cnf
然後,使用vi編輯器修改/etc/my.cnf文件,在[client]下添加: 「default-character-set=gb2312」;在[mysqld]下添加:「default-character-set=gb2312」。如下所示:
# The following options will be passed to all MySQL clients
[client]
default-character-set=gb2312
#password = your_password
port = 3306
socket = /var/lib/mysql/mysql.sock
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
default-character-set=gb2312
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
按一下Esc鍵,輸入「:wq」後回車保存配置文件,輸入「/etc/rc.d/init.d/mysqlrestart」重啟MySQL服務,如下所示:
[root@localhost ~]# /etc/rc.d/init.d/mysql restart
Shutting down MySQL..[確定]
Starting MySQL..[確定]
最後,我們來驗證MySQL伺服器配置是否成功,首先登錄MySQL,輸入「mysql –uroot -p」回車,系統提示輸入密碼,登錄成功後進入MySQL命令模式,如下所示:
[root@localhost ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.56-community-log MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
在MySQL命令模式下分別輸入「show variables like'collation_%';」、「show variables like 'character_set_%';」回車後顯示字元集設置,如下所示:
mysql> show variables like 'collation_%';
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | gb2312_chinese_ci |
| collation_database | gb2312_chinese_ci |
| collation_server | gb2312_chinese_ci |
+----------------------+-------------------+
3 rows in set (0.05 sec)
mysql> show variables like 'character_set_%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | gb2312 |
| character_set_connection | gb2312 |
| character_set_database | gb2312 |
| character_set_filesystem | binary |
| character_set_results | gb2312 |
| character_set_server | gb2312 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
mysql>
根據以上查詢結果可知我們設置的MySQL資料庫配置信息已經生效,至此完成MySQL的伺服器的安裝與配置。
3.關於MySQL資料庫的一些注意事項
3.1 遠程連接mysql速度慢
解決方法:
在MySQL伺服器的配置(/etc/my.cnf)中增加一個如下配置後速度飛快。
[mysqld]
skip-name-resolve
備註:這樣就能禁用DNS解析,連接速度會快很多。不過,這樣的話就不能在MySQL的授權表中使用主機名了而只能用ip格式。
3.2 重啟資料庫後,發現無需密碼(或者任何密碼)即可以連接
解決方法:
檢查你的MySQL配置文件(/etc/my.cnf)中是不是多了一條語句:「skip-grant-tables」,刪除(注釋)該語句,重新配置MySQL密碼,再次重啟MySQL服務即可!
備註:若使用skip-grant-tables系統將對任何用戶的訪問不做任何訪問控制,但可以用 mysqladmin flush-privileges或mysqladmin reload來開啟訪問控制;默認情況是show databases語句對所有用戶開放,如果mysql伺服器沒有開遠程帳戶,就在/etc/my.cnf裡面加上skip-grant-tables。
❸ linux中怎樣安裝mysql資料庫伺服器
第一種:直接使用 yum -y install mysql-server
第二種
使用rpm安裝Mysql
1、下載MySQL的安裝文件
安裝MySQL需要下面兩個文件:
MySQL-server-4.0.16-0.i386.rpm
MySQL-client-4.0.16-0.i386.rpm
下載地址為:http://dev.mysql.com/downloads/mysql-4.0.html,打開此網頁,下拉網頁找到「Linux x86 RPM downloads」項,找到「Server」和「Client programs」項,下載需要的上述兩個rpm文件。
2、安裝MySQL
rpm文件是Red Hat公司開發的軟體安裝包,rpm可讓Linux在安裝軟體包時免除許多復雜的手續。該命令在安裝時常用的參數是 –ivh ,其中i表示將安裝指定的rmp軟體包,V表示安裝時的詳細信息,h表示在安裝期間出現「#」符號來顯示目前的安裝過程。這個符號將持續到安裝完成後才停止。
1)安裝伺服器端
在有兩個rmp文件的目錄下運行如下命令:
[root@test1 local]# rpm -ivh MySQL-server-4.0.16-0.i386.rpm
顯示如下信息。
warning: MySQL-server-4.0.16-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
Preparing...########################################### [100%]
1:MySQL-server########################################### [100%]
。。。。。。(省略顯示)
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h test1 password 'new-password'
。。。。。。(省略顯示)
Starting mysqld daemon with databases from /var/lib/mysql
如出現如上信息,服務端安裝完畢。測試是否成功可運行netstat看Mysql埠是否打開,如打開表示服務已經啟動,安裝成功。Mysql默認的埠是3306。
[root@test1 local]# netstat -nat
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp00 0.0.0.0:3306 0.0.0.0:* LISTEN
上面顯示可以看出MySQL服務已經啟動。
2)安裝客戶端
運行如下命令:
[root@test1 local]# rpm -ivh MySQL-client-4.0.16-0.i386.rpm
warning: MySQL-client-4.0.16-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
Preparing...########################################### [100%]
1:MySQL-client ########################################### [100%]
顯示安裝完畢。
用下面的命令連接mysql,測試是否成功。
註:其實也可以下載壓縮文件,到本地後直接解壓縮即可。
二、登錄MySQL
登錄MySQL的命令是mysql, mysql 的使用語法如下:
mysql [-u username] [-h host] [-p[password]] [dbname]
username 與 password 分別是 MySQL 的用戶名與密碼,mysql的初始管理帳號是root,沒有密碼,注意:這個root用戶不是Linux的系統用戶。MySQL默認用戶是root,由於初始沒有密碼,第一次進時只需鍵入mysql即可。
[root@test1 local]# mysql
Welcome to the MySQL monitor.Commands end with ; or /g.
Your MySQL connection id is 1 to server version: 4.0.16-standard
Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
mysql>
出現了「mysql>」提示符,恭喜你,安裝成功!
增加了密碼後的登錄格式如下:
mysql -u root -p
Enter password: (輸入密碼)
其中-u後跟的是用戶名,-p要求輸入密碼,回車後在輸入密碼處輸入密碼。
注意:
1.這個mysql文件在/usr/bin目錄下,與後面講的啟動文件/etc/init.d/mysql不是一個文件。
2.如果從本地登錄其他主機,則格式如下:
./mysql -u root -p -h 192.168.xx.xx
前面必須加./
三、MySQL的幾個重要目錄
MySQL安裝完成後不象SQL Server默認安裝在一個目錄,它的資料庫文件、配置文件和命令文件分別在不同的目錄,了解這些目錄非常重要,尤其對於Linux的初學者,因為 Linux本身的目錄結構就比較復雜,如果搞不清楚MySQL的安裝目錄那就無從談起深入學習。
下面就介紹一下這幾個目錄。
1、資料庫目錄
/var/lib/mysql/
2、配置文件
/usr/share/mysql(mysql.server命令及配置文件)
3、相關命令
/usr/bin(mysqladmin mysqlmp等命令)
4、啟動腳本
/etc/rc.d/init.d/(啟動腳本文件mysql的目錄)
四、修改登錄密碼
MySQL默認沒有密碼,安裝完畢增加密碼的重要性是不言而喻的。
1、命令
usr/bin/mysqladmin -u root password 'new-password'
格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼
2、例子
例1:給root加個密碼123456。
鍵入以下命令 :
[root@test1 local]# /usr/bin/mysqladmin -u root password 123456
註:因為開始時root沒有密碼,所以-p舊密碼一項就可以省略了。
3、測試是否修改成功
1)不用密碼登錄
[root@test1 local]# mysql
ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO)
顯示錯誤,說明密碼已經修改。
2)用修改後的密碼登錄
[root@test1 local]# mysql -u root -p
Enter password: (輸入修改後的密碼123456)
Welcome to the MySQL monitor.Commands end with ; or /g.
Your MySQL connection id is 4 to server version: 4.0.16-standard
Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
mysql>
成功!
這是通過mysqladmin命令修改口令,也可通過修改庫來更改口令。
五、啟動與停止
1、啟動
MySQL安裝完成後啟動文件mysql在/etc/init.d目錄下,在需要啟動時運行下面命令即可。
[root@test1 init.d]# /etc/init.d/mysql start
2、停止
/usr/bin/mysqladmin -u root -p shutdown
3、自動啟動
1)察看mysql是否在自動啟動列表中
[root@test1 local]#/sbin/chkconfig –list
2)把MySQL添加到你系統的啟動服務組裡面去
[root@test1 local]#/sbin/chkconfig– addmysql
3)把MySQL從啟動服務組裡面刪除。
[root@test1 local]#/sbin/chkconfig– delmysql
六、更改MySQL目錄
MySQL默認的數據文件存儲目錄為/var/lib/mysql。假如要把目錄移到/home/data下需要進行下面幾步:
1、home目錄下建立data目錄
cd /home
mkdir data
2、把MySQL服務進程停掉:
mysqladmin -u root -p shutdown
3、把/var/lib/mysql整個目錄移到/home/data
mv /var/lib/mysql/home/data/
這樣就把MySQL的數據文件移動到了/home/data/mysql下
4、找到my.cnf配置文件
如果/etc/目錄下沒有my.cnf配置文件,請到/usr/share/mysql/下找到*.cnf文件,拷貝其中一個到/etc/並改名為my.cnf)中。命令如下:
[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf/etc/my.cnf
5、編輯MySQL的配置文件/etc/my.cnf
為保證MySQL能夠正常工作,需要指明mysql.sock文件的產生位置。 修改socket=/var/lib/mysql/mysql.sock一行中等號右邊的值為:/home/mysql/mysql.sock 。操作如下:
vi my.cnf (用vi工具編輯my.cnf文件,找到下列數據修改之)
# The MySQL server
[mysqld]
port= 3306
#socket = /var/lib/mysql/mysql.sock(原內容,為了更穩妥用「#」注釋此行)
socket = /home/data/mysql/mysql.sock(加上此行)
6、修改MySQL啟動腳本/etc/rc.d/init.d/mysql
最後,需要修改MySQL啟動腳本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等號右邊的路徑改成你現在的實際存放路徑:home/data/mysql。
[root@test1 etc]# vi/etc/rc.d/init.d/mysql
#datadir=/var/lib/mysql(注釋此行)
datadir=/home/data/mysql (加上此行)
7、重新啟動MySQL服務
/etc/rc.d/init.d/mysqlstart
或用reboot命令重啟Linux
如果工作正常移動就成功了,否則對照前面的7步再檢查一下。
七、MySQL的常用操作
注意:MySQL中每個命令後都要以分號;結尾。
1、顯示資料庫
mysql> show databases;
+----------+
| Database |
+----------+
| mysql|
| test |
+----------+
2 rows in set (0.04 sec)
Mysql剛安裝完有兩個資料庫:mysql和test。mysql庫非常重要,它裡面有MySQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫中的相關表進行操作。
2、顯示資料庫中的表
mysql> use mysql; (打開庫,對每個庫進行操作就要打開此庫)
Database changed
mysql> show tables;
+-----------------+
| Tables_in_mysql |
+-----------------+
| columns_priv|
| db|
| func|
| host|
| tables_priv |
| user|
+-----------------+
6 rows in set (0.01 sec)
3、顯示數據表的結構:
describe 表名;
4、顯示表中的記錄:
select * from 表名;
例如:顯示mysql庫中user表中的紀錄。所有能對MySQL用戶操作的用戶都在此表中。
Select * from user;
5、建庫:
create database 庫名;
例如:創建一個名字位aaa的庫
mysql> create databases aaa;
6、建表:
use 庫名;
create table 表名 (欄位設定列表);
例如:在剛創建的aaa庫中建立表name,表中有id(序號,自動增長),xm(姓名),xb(性別),csny(出身年月)四個欄位
use aaa;
mysql> create table name (id int(3) auto_increment not null primary key, xm char(8),xb char(2),csny date);
可以用describe命令察看剛建立的表結構。
mysql> describe name;
+-------+---------+------+-----+---------+----------------+
| Field | Type| Null | Key | Default | Extra|
+-------+---------+------+-----+---------+----------------+
| id| int(3)|| PRI | NULL| auto_increment |
| xm| char(8) | YES| | NULL||
| xb| char(2) | YES| | NULL||
| csny| date| YES| | NULL||
+-------+---------+------+-----+---------+----------------+
7、增加記錄
例如:增加幾條相關紀錄。
mysql> insert into name values('','張三','男','1971-10-01');
mysql> insert into name values('','白雲','女','1972-05-20');
可用select命令來驗證結果。
mysql> select * from name;
+----+------+------+------------+
| id | xm | xb | csny |
+----+------+------+------------+
|1 | 張三 | 男 | 1971-10-01 |
|2 | 白雲 | 女 | 1972-05-20 |
+----+------+------+------------+
8、修改紀錄
例如:將張三的出生年月改為1971-01-10
mysql> update name set csny='1971-01-10' where xm='張三';
9、刪除紀錄
例如:刪除張三的紀錄。
mysql> delete from name where xm='張三';
10、刪庫和刪表
drop database 庫名;
drop table 表名;
11.查看mysql版本
在mysql5.0中命令如下:
show variables like 'version';
或者:select version();
八、增加MySQL用戶
格式:grant select on 資料庫.* to 用戶名@登錄主機 identified by "密碼"
例1、增加一個用戶user_1密碼為123,讓他可以在任何主機上登錄,並對所有資料庫有查詢、插入、修改、刪除的許可權。首先用以root用戶連入MySQL,然後鍵入以下命令:
mysql> grant select,insert,update,delete on *.* to user_1@"%" Identified by "123";
例1、增加的用戶是十分危險的,如果知道了user_1的密碼,那麼他就可以在網上的任何一台電腦上登錄你的MySQL資料庫並對你的數據為所欲為了,解決辦法見例2。
例2、增加一個用戶user_2密碼為123,讓此用戶只可以在localhost上登錄,並可以對資料庫aaa進行查詢、插入、修改、刪除的操作(localhost指本地主機,即MySQL資料庫所在的那台主機),這樣用戶即使用知道user_2的密碼,他也無法從網上直接訪問資料庫,只能通過 MYSQL主機來操作aaa庫。
mysql>grant select,insert,update,delete on aaa.* to user_2@localhost identified by "123";
用新增的用戶如果登錄不了MySQL,在登錄時用如下命令:
mysql -u user_1 -p-h 192.168.113.50(-h後跟的是要登錄主機的ip地址)
九、備份與恢復
1、備份
例如:將上例創建的aaa庫備份到文件back_aaa中
[root@test1 root]# cd/home/data/mysql(進入到庫目錄,本例庫已由val/lib/mysql轉到/home/data/mysql,見上述第六部分內容)
[root@test1 mysql]# mysqlmp -u root -p --opt aaa > back_aaa
2、恢復
[root@test mysql]# mysql -u root -p ccc < back_aaa
❹ 如何在linux下安裝mysql
1、到mysql官網下載mysql編譯好的二進制安裝包,在下載頁面SelectPlatform:選項選擇linux-generic,然後把頁面拉到底部,
64位系統下載Linux-Generic(glibc2.5)(x86,64-bit),32位系統下載Linux-Generic(glibc2.5)(x86,32-bit)
2、解壓32位安裝包:
進入安裝包所在目錄,執行命令:tarmysql-5.6.17-linux-glibc2.5-i686.tar.gz
3、復制解壓後的mysql目錄到系統的本地軟體目錄:
執行命令:cpmysql-5.6.17-linux-glibc2.5-i686/usr/local/mysql-r
4、添加系統mysql組和mysql用戶:
執行命令:groupaddmysql和useradd-r-gmysqlmysql
5、安裝資料庫:
進入安裝mysql軟體目錄:執行命令cd/usr/local/mysql
修改當前目錄擁有者為mysql用戶:執行命令?chown-Rmysql:mysql./
安裝資料庫:執行命令?./scripts/mysql_install_db--user=mysql
修改當前目錄擁有者為root用戶:執行命令?chown-Rroot:root./
修改當前data目錄擁有者為mysql用戶:執行命令?chown-Rmysql:mysqldata
到此資料庫安裝完畢
6、啟動mysql服務和添加開機啟動mysql服務:
添加開機啟動:執行命令cpsupport-files/mysql.server/etc/init.d/mysql,把啟動腳本放到開機初始化目錄
啟動mysql服務:執行命令servicemysqlstart
執行命令:ps-ef|grepmysql看到mysql服務說明啟動成功
7、修改mysql的root用戶密碼,root初始密碼為空的:
執行命令:./bin/mysqladmin-urootpassword'密碼'
8、把mysql客戶端放到默認路徑:
ln-s/usr/local/mysql/bin/mysql/usr/local/bin/mysql
注意:建議使用軟鏈過去,不要直接包文件復制,便於系統安裝多個版本的mysql
❺ 如何在linux上安裝mysql
本文將以MySQL 5.0.51為例,以CentOS 5為平台,講述MySQL資料庫的安裝和設置。MySQL是最流行的開源SQL資料庫管理系統,它由MySQL AB開發、發布和支持。MySQL AB是一家由MySQL開發人員創建的商業公司,它是一家使用了一種成功的商業模式來結合開源價值和方法論的第二代開源公司。MySQL是MySQL AB的注冊商標。MySQL是一個快速的、多線程、多用戶和健壯的SQL資料庫伺服器。MySQL伺服器支持關鍵任務、重負載生產系統的使用,也可以將它嵌入到一個大配置(mass-deployed)的軟體中去。MySQL的官方發音是「My Ess Que Ell」,而不是「My sequel」。但是你也可以使用「My sequel」和其他的方言。)提供了關於MySQL和MySQL AB的最新的消息。有大量的MySQL軟體可以使用。MySQL有兩種安裝方式:源碼包安裝和二進制包安裝。這兩種方式各有特色:二位制包安裝不需編譯,針對不同的平台有經過優化編譯的不同的二進制文件以及包格式,安裝簡單方便;源碼包則必須先配置編譯再安裝,可以根據你所用的主機環境進行優化,選擇最佳的配置值,安裝定製更靈活。下面分別介紹這兩種安裝方式。下載最新穩定發行版的MySQL源碼包。本文使用的是5.0.51版本,在linux系統下用下面的命令下載:命令執行結束後,當前工作目錄下將生成一個新的子目錄mysql-5.0.51,此目錄下即為mysql的源碼文件。CC:C編譯器的名稱(用於運行configure),本文示例為gccCFLAGS:C編譯器的標志(用於運行configure),本文示例為-O3,指定優化級別為3CXX:C++編譯器的名稱(用於運行configure),本文示例為gcc--prefix:指定安裝目錄,本文示例為/usr/local/mysql--localstatedir:指定默認資料庫文件保存目錄,默認為安裝目錄下的var目錄--with-client-ldflags:客戶端鏈接參數,本文示例為指定靜態編譯mysql客戶端--with-mysqld-ldflags:伺服器端鏈接參數,本文示例為指定靜態編譯mysql伺服器--with-charset:指定默認字元集。mysql默認使用latin1(cp1252)字元集,可以使用此選項更改。字元集可以是big5、cp1251、cp1257、czech、danish、dec8、dos、euc_kr、gb2312、gbk、german1、hebrew、hp8、hungarian、koi8_ru、koi8_ukr、latin1、latin2、sjis、swe7、tis620、ujis、usa7或win1251ukr。--with-collation:指定默認校對規則。mysql默認使用latin1_swedish_ci校對規則,可以使用此選項更改。--with-extra-charsets:伺服器需要支持的字元集,有三種可能的值:空格間隔的一系列字元集名;complex ,包括不能動態裝載的所有字元集;all,將所有字元集包括進二進制。本文示例為complex。注意:要想更改字元集和校對規則,要同時使用--with-charset和--with-collation選項。 校對規則必須是字元集的合法校對規則。(在mysql中使用SHOW COLLATION語句來確定每個字元集使用哪個校對規則)。源碼方式安裝需要手動復制配置文件,配置模板位於源碼樹的support-files目錄,有my-small.cnf、my-medium.cnf、my-large.cnf、my-huge.cnf四個,選擇跟你的環境相接近的一個復制到/etc目錄,並做適當修改。關於mysql配置文件的詳細信息請參閱筆者的其它文章或是mysql官方文檔。本文示例選擇my-medium.cnf,執行下面的命令將其復制到/etc目錄:默認資料庫文件保存目錄為安裝目錄下的var目錄,執行configure命令時可通過--localstatedir參數指定不同的目錄,本文示例為默認位置。表明mysqld服務已經生效,在2、3、4、5運行級別隨系統啟動而自動啟動,以後可以使用service命令控制mysql的啟動和停止。Mysql二進制包已經包含在CentOS 5的安裝媒體中,可以直接從安裝媒體中安裝下面三個rpm包:不同的版本文件名有所不同,請注意區分。如果你安裝的機器此時可以連接到互聯網,筆者建議使用yum命令來簡化安裝過程:yum將自動從centos的鏡像站點查找你指明的軟體的最新二進制包,並檢查軟體包依賴關系,安裝軟體的同時自動安裝其依賴的軟體包。通過CentOS安裝媒體或yum安裝的二進制包版本會落後於mysql開發者網站發布的版本,可以從mysql網站下載安裝最新穩定版本的mysql。下載最新穩定發行版的相應硬體平台的MySQL。本文使用的是Red Hat Enterprise Linux 5 RPM (x86) 5.0.45版本。需要下載Server、Client、Headers and Libraries、Share Libraries/Shared compatibility libraries幾個rpm包,其它為可選包,按需要選擇。源碼包方式安裝時通常是在3.1.4節中configure命令的--prefix選項指定的目錄中建立如下的目錄結構,特殊指定的目錄除外:./share/mysql #mysql公用文件目錄,包括字元集、配置文件模板、啟動腳本、初始化SQL文件等/usr/lib64/mysql #如果為64系統,mysql 64位庫文件目錄Linux系統下,mysql的配置參數文件為my.cnf,一般按下面的順序查找此文件:/etc目錄、mysql安裝目錄、mysql數據目錄。配置模板位於源碼樹的support-files目錄,有my-small.cnf、my-medium.cnf、my-large.cnf、my-huge.cnf四個,關於mysql配置文件的詳細信息請參閱筆者的其它文章或是mysql官方文檔。mysql安裝後默認生成兩個帳號:一個是root,未設置密碼,可以從本機登錄到mysql;另一個是匿名帳號,無帳號名、無密碼,可以從本機登錄,未提供用戶名的連接都將假定為此帳號。這樣的設置存在著安全隱患,按下面的步驟進行更改。如果提示找不到mysql文件,請嘗試使用絕對路徑,如本文示例為:至此,Mysql基本安裝完畢。希望本文能對初學者有所幫助。在安裝mysql之前需要進行一些准備工作。首先要明確Linux中是否已經安裝mysql服務,在不明確的情況下,可以執行以下命令進行確認。執行命令後的結果如下所示,表明mysql服務沒有安裝。如果檢測到mysql服務沒有安裝,則需要准備安裝mysql服務所需要的RPM包,如下所示:下載地址:。安裝mysql的方法有多種,下面就以RPM包安裝和源碼安裝兩種方式為例進行講解。如上安裝其他的5個rpm文件,應該沒有什麼問題。要使用源碼的方式對mysql資料庫進行安裝,則需要先從相關網站下載獲得相應的mysql安裝包文件(mysql-5.0.15.tar.gz),然後進行相關的安裝工作,安裝的具體步驟如下。第1步,為「mysqld」服務增添一個登錄組和用戶名,執行如下命令。第2步,解壓mysql安裝包,執行如下命令。第3步,進行相關的配置和編譯。給configure分配可執行文件,執行如下命令。改變字元集為GBK[默認字元集為 ISO-8859-1(Latin1)],執行如下命令。第4步,執行如下命令進行安裝另外,如果想安裝選項文件,使用當前存在的「support-files」文件夾作為模板,執行如下指令。同時,如果需要讓mysql每次開機時自動啟動,需要執行如下指令。第5步,執行以下命令進行安裝目錄。第6步,將程序的所有許可權授給「root」,並且把數據目錄的所有授權給可以進行「mysqld」的用戶,假設mysql的安裝目錄為「/usr/local/mysql」,執行以下命令。首先把文件擁有權授給「root」,執行如下命令。然後把數據目錄擁護權授給「mysql」用戶,執行如下命令。最後把組的許可權授給「mysql」組,執行如下命令。第7步,所有的配置完成後,執行以下命令測試並運行mysql第8步,測試一切正常後,為了安全起見,最好更改管理員的密碼。可以運行mysqladmin,執行如下命令。第9步,允許其他用戶訪問本機,執行以下命令。第10步,修改mysql資料庫埠號,執行如下命令。第11步,重啟應用,執行如下命令。以上mysql安裝方式都稍顯復雜,建議在「軟體包管理者」窗口中進行安裝。安裝這個包後,會獲得兩個mysql的yum repo源:根據步驟安裝就可以了,不過安裝完成後,沒有密碼,需要重置密碼。重置密碼前,首先要登錄登錄時有可能報這樣的錯:ERROR 2002 (HY000): Can『t connect to local MySQL server through socket 『/var/lib/mysql/mysql.sock『 (2),原因是/var/lib/mysql的訪問許可權問題。下面的命令把/var/lib/mysql的擁有者改為當前用戶:然後,重啟服務:這樣從其它客戶機也可以連接上mysql服務了。
❻ 怎樣在Linux環境下安裝部署MySQL資料庫系統
在Linux安裝軟體需要預先做好如下一些准備:准備好Linux操作系統如:CentOS7。配置好yum源。
完成上述准備後,就可以動手安裝MySQL資料庫了。主要安裝步驟如下:
1. 禁用selinux
setenforce 0
2. 上傳安裝文件到Linux
3.解壓rpm包
tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
4.安裝軟體
yum install mysql-community-{libs,client,common,server}-*.rpm
5.啟動mysql資料庫初始化
systemctl start mysqld
6.修改vi /etc/my.cnf
添加:
[mysqld]
#可以在表中錄入中文
character-set-server=utf8 #
explicit-defaults-for-timestamp
# 禁用當前密碼認證策略,可以使用簡單密碼(生產環境不適用)
validate_password=0
7.重啟mysql服務
systemctl restart mysqld
8.找臨時登錄密碼
grep -i "temporary password" /var/log/mysqld.log
9.連接MySQL資料庫
mysql -uroot -p 輸入臨時密碼
10.修改root用戶登錄密碼為簡單密碼(生產環境不適用)
alter user root@localhost identified by '';
11.配置MYSQL_PS1環境變數
修改家目錄下:.bash_profile文件,添加
export MYSQL_PS1="\u@\h[\d]>"
12.使新環境變數生效
source /root/.bash_profile
13.重新連接mysql驗證
mysql -uroot -p
除了上述安裝方式以外,可能在公司中會遇到安裝指定版本的需求,那麼如何安裝指定版本的MySQL數據呢?這時我們可以採用下載指定版本安裝包進行安裝的方式,主要步驟如下,假設CentOS7 linux最小安裝,已經配置好yum。首先檢查是否安裝numactl包
rpm -qa|grep numactl
yum install numactl-libs-* # 如果沒有安裝需要安裝。檢查是否安裝lio包
rpm -qa|grep lio
yum install lio-* # 如果沒有安裝需要安裝
具體安裝步驟如下:
* 禁用selinux
setenforce 0
* 上傳安裝文件到Linux
mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
* 創建mysql用戶組和用戶
groupadd -g 27 -r mysql
#-r創建系統賬戶,-M 不創建用戶家目錄 -N 不創建和用戶名一樣的用戶組
useradd -M -N -g mysql -r -s /bin/false -c "MySQL Server" -u 27 mysql
id mysql
* 上傳安裝包到root家目錄
* 解壓二進制文件到/usr/local
tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /usr/local
* 解壓目錄改名為mysql
cd /usr/local
ls -l
mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql
* 環境變數中添加mysql/bin目錄
vi /root/.bash_profile
修改PATH=/usr/local/mysql/bin:$PATH:$HOME/bin
添加 export MYSQL_PS1="\u@\h[\d]>"
source /root/.bash_profile
* 創建/usr/local/mysql/etc/my.cnf選項文件 (也可以使用默認的/etc/my.cnf選項文件)
mkdir -p /usr/local/mysql/etc
mkdir -p /usr/local/mysql/mysql-files
* 編輯選項文件my.cnf填寫默認選項
vi /usr/local/mysql/etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/data/mysql.sock
log-error=/usr/local/mysql/data/mysqld.err
pid-file=/usr/local/mysql/data/mysqld.pid
secure_file_priv=/usr/local/mysql/mysql-files
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
Explicit-defaults-for-timestamp
character-set-server=utf8
[mysql]
socket=/usr/local/mysql/data/mysql.sock
* 初始化數據目錄
cd /usr/local/mysql
mkdir data
chmod 750 data
chown mysql:mysql data
* 初始化資料庫
cd /usr/local/mysql
bin/mysqld --defaults-file=/usr/local/mysql/etc/my.cnf --initialize
* 使用systemd管理mysql
例如:systemctl {start|stop|restart|status} mysqld
cd /usr/lib/systemd/system
touch mysqld.service
chmod 644 mysqld.service
vi mysqld.service
# 添加以下內容
[Unit]
Description=MySQL Server
Documentation=man:mysqld(7)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
Type=forking
PIDFile=/usr/local/mysql/data/mysqld.pid
# Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec=0
# Start main service
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/etc/my.cnf --daemonize --pid-file=/usr/local/mysql/data/mysqld.pid $MYSQLD_OPTS
# Use this to switch malloc implementation
EnvironmentFile=-/etc/sysconfig/mysql
# Sets open_files_limit
LimitNOFILE = 65535
Restart=on-failure
RestartPreventExitStatus=1
PrivateTmp=false
以上內容中注意:The --pid-file option specified in the my.cnf configuration file is ignored by systemd.
默認:LimitNOFILE = 5000,如果連接數(max_connection)需要調大,可以將LimitNOFILE 設置為最大65535
* 創建mysql.conf文件
cd /usr/lib/tmpfiles.d
#Add a configuration file for the systemd tmpfiles feature. The file is named mysql.conf and is placed in /usr/lib/tmpfiles.d.
cd /usr/lib/tmpfiles.d
touch mysql.conf
chmod 644 mysql.conf
* mysql.conf添加內容
vi mysql.conf
添加以下語句:
d /usr/local/mysql/data 0750 mysql mysql -
* 使新添加的mysqld服務開機啟動
systemctl enable mysqld.service
* 手動啟動mysqld
systemctl start mysqld
systemctl status mysqld
* 獲得mysql臨時登錄密碼
cat /usr/local/mysql/data/mysqld.err | grep "temporary password"
* 客戶端登錄連接mysql伺服器
mysql -uroot -p
輸入臨時密碼
* 修改MySQL用戶root@localhost密碼
mysql> alter user root@localhost identified by ''; #此處為了方便設置為空密碼
* 測試新密碼連接MySQL服務
mysql -uroot -p
至此,我們就完成了在Linux環境下安裝MySQL的任務。通過這兩種方式我們可以體會到在Linux環境下安裝軟體的基本思路及方法。
❼ 如何在linux系統中centos7.6上面安裝mysql資料庫
你可以參考一下網頁鏈接
❽ linux怎麼安裝mysql資料庫
在linux下安裝mysql資料庫並配置的流程比較繁瑣,需要耐心調試,具體方法和步驟如下:
1.查找以前是否安裝有mysql,使用下面命令:
rpm -qa|grep -i mysql
如果顯示有如下包則說明已安裝mysql
mysql-4.1.12-3.RHEL4.1
mysqlclient10-3.23.58-4.RHEL4.1
2.如果已安裝,則需要刪除已安裝的資料庫,使用以下命令來刪除資料庫
刪除命令:rpm -e --nodeps 包名
( rpm -ev mysql-4.1.12-3.RHEL4.1 )
刪除老版本mysql的開發頭文件和庫
命令:rm -fr /usr/lib/mysql
rm -fr /usr/include/mysql
注意:卸載後/var/lib/mysql中的數據及/etc/my.cnf不會刪除,如果確定沒用後就手工刪除
rm -f /etc/my.cnf
rm -fr /var/lib/mysql
3.下載mysql的rpm包
可以通過wget下載具體的地址因為不能用鏈接請大家去官網去找
(1)MySQL-server-5.6.10-1.rhel5.x86_64.rpm:MySQL伺服器;
(2)MySQL-client-5.6.10-1.rhel5.x86_64.rpm:MySQL客戶端;
(3)MySQL-devel-5.6.10-1.rhel5.x86_64.rpm:Mysql開發依賴包。
下載後放到Liunx伺服器中。
4.安裝MySQL Server的rpm包
rpm -ivh MySQL-server-5.6.21-1.linux_glibc2.5.x86_64.rpm
安裝完成後會生成root用戶的隨機密碼,請使用「cat /root/.mysql_secret」或類似命令進行查看。
5.安裝MySQL客戶端
rpm -ivh MySQL-client-5.6.21-1.linux_glibc2.5.x86_64.rpm
6.安裝MySQL開發依賴包
rpm -ivh MySQL-devel-5.6.21-1.linux_glibc2.5.x86_64.rpm
7.啟動msyql
安裝完成後mysql是沒有啟動的,運行mysql命令會提示如下錯誤:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
可使用如下命令啟動MySQL:
service mysql start
或者使用如下命令:
/etc/init.d/mysql start
可使用SET PASSWORD命令修改root用戶的密碼,參考如下:SET PASSWORD = PASSWORD('root123456');
8.登錄MySQL
使用mysql命令登錄MySQL伺服器,運行MySQL的命令時,會提示需要設置root用戶密碼。
9.設置開機自啟動
/etc/init.d/mysql start
設置完成後重啟系統,使用natstat –nat命令可看到MySQL的3306埠。
10.至此已經安裝好了mysql資料庫,當然現在我們的資料庫還不支持遠程連接,遠程連接會出現以下代碼:1130,ERROR 1130: Host 192.168.0.10 is not allowed to connect to this MySQL server,可以通過以下以下來解決。
11.改表法:在本機登入mysql後,更改「mysql」資料庫里的「user」表裡的「host」項,從」localhost」改為'%'。
mysql>
mysql>use mysql;
mysql>select 'host' from user where user='root
12.到此為止,mysql資料庫在linux中安裝完畢。
❾ 如何在linux下安裝mysql資料庫並配置
1)首先檢查系統中是否已經安裝了MySQL在終端裡面輸入 sudo netstat -tap | grep mysql若沒有反映,沒有顯示已安裝結果,則沒有安裝。若如下顯示,則表示已經安裝Linux下MySQL的安裝與配置 三聯2)如果沒有安裝,則安裝MySQL.在終端輸入 sudo apt-get install mysql-server mysql-client在此安裝過程中會讓你輸入root用戶(管理MySQL資料庫用戶,非Linux系統用戶)密碼,按照要求輸入即可。如下所示:3)測試安裝是否成功:在終端輸入 sudo netstat -tap | grep mysql4)也可通過登錄MySQL測試在終端輸入 mysql -uroot -p 接下來會提示你輸入密碼,輸入正確密碼,即可進入。5)MySQL的一些簡單管理:啟動MySQL服務: sudo start mysql停止MySQL服務: sudo stop mysql修改 MySQL 的管理員密碼: sudo mysqladmin -u root password newpassword設置遠程訪問(正常情況下,mysql佔用的3306埠只是在IP 127.0.0.1上監聽,拒絕了其他IP的訪問(通過netstat可以查看到)。取消本地監聽需要修改 my.cnf 文件:):sudo vi /etc/mysql/my.cnfbind-address = 127.0.0.1 //找到此內容並且注釋6)MySQL安裝後的目錄結構分析(此結構只針對於使用apt-get install 在線安裝情況):資料庫存放目錄: /var/lib/mysql/相關配置文件存放目錄: /usr/share/mysql相關命令存放目錄: /usr/bin(mysqladmin mysqlmp等命令)啟動腳步存放目錄: /etc/rc.d/init.d/7)MySQL圖形化管理軟體一般使用的有兩個比較好,一個開源,一個商業收費:開源:MySQL Workbench (具體使用介紹隨著我的使用,我會慢慢總結)商業:Navicat (收費的,有30天體驗,之後我相信大家會有辦法的)如何在linux下安裝mysql資料庫並配置