-L /usr/lib/mysql -lmysqlclient
這個在mysql目錄下有lmysqlclient.a
在lib下有一系列.so
我使用的這個還需要包含-lm -ldl。等
常用sql語句:
create database mytest;
show databases;
use mytest;
CREATE TABLE PERMIT(SN varchar(24),COUNT int,PRIMARY KEY (SN));
----
CREATE USER 'hellokitty BY 123';
GRANT ALL on mytest.* to hellokitty @ localhost identified by '123456';
----
alter table hellokitty modify column SN varchar(25);
alter table hellokitty change column SN SN2 varchar(26);
1 linux創建自啓動程序
自啓動的兩種方法,都經過自己測試。
1.1 自啓動程序方法1:
在etc/rc.local在裏面加入/home/robin/code/autoruntest > /dev/null &(其中autoruntest 測試程序名稱,下同)。即可自啓動
1.2 自啓動程序方法2:
創建linux服務,步驟如下:
1) 寫服務啓動腳本文件(後附例子)
2) 修改腳本文件chmod 777 autoruntest
3) 腳本文件拷貝到 /etc/rc.d/init.d/
4) chkconfig --add autoruntest 添加服務
5) 重新啓動(完成)
其中到了第三步後就可以使用service啓動停止了,要自啓動必須使用chkconfig 將服務添加到系統中。
2 linux中的服務
要定製系統服務必須要以root用戶操作。通過ntsysv命令可以看到系統所有的服務,及其是否和系統一起啓動,在這裏可以定製系統服務,操作界面如下圖所示,在這裏可以看到測試程序autoruntest已經添加爲系統服務了,並且是隨着系統運行的。這裏可以定製啓動的服務,按F1可以看到各個服務的介紹。後附系統服務的介紹。
3 附錄
3.1 服務腳本文件示例
#!/bin/bash
#
# autoruntest the shell script takes care of autoruntest auto start and stop
#
# chkconfig: 2345 20 80
# description: autoruntest
# processname: /etc/rc.d/init.d/autoruntest
EXEC_PATH=/home/robin/code
EXEC=autoruntest
PID_FILE=/var/run/autoruntest.pid
DAEMON=/home/robin/code/autoruntest
# Source function library.
. /etc/rc.d/init.d/functions
if ! [ -x $EXEC_PATH/$EXEC ] ; then
echo "ERROR: $EXEC_PATH/$EXEC not found"
exit 1
fi
stop()
{
echo "Stoping $EXEC ..."
killall $DAEMON >/dev/null
usleep 100
echo "Shutting down $EXEC: [ OK ]"
}
start()
{
echo "Starting $EXEC ..."
$DAEMON > /dev/null &
usleep 100
echo "Starting $EXEC: [ OK ]"
}
restart()
{
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
status)
status -p $PID_FILE $DAEMON
;;
*)
echo "Usage: service $EXEC {start|stop|restart|status}"
exit 1
esac
exit $?
3.2 系統服務介紹
1. alsasound :Alsa聲卡驅動守護程序。
2. acpid:acpid(Advanced Configuration and Power Interface)是爲替代傳統的APM電源管理標準而推出的新型電源管理標準。通常筆記本電腦需要啓動電源進行管理。
3. atalk:AppleTalk網絡守護進程。
4. amd: 自動安裝NFS守護進程。
5. anacron:一個自動化運行任務守護進程。
6. apmd:apmd(Advanced Power Management)是高級電源管理。
7. arptables_jf :爲arptables網絡的用戶控制過濾的守護進程。
8. arpwatch: 記錄日誌並構建一個在LAN接口上看到的以太網地址和IP地址對數據庫。
9. autofs:自動安裝管理進程automount,與NFS相關,依賴於NIS服務器。
10. bootparamd:引導參數服務器,爲LAN上的無盤工作站提供引導所需的相關信息。
11. bluetooch:藍牙服務器守護進程。
12. crond :cron是Unix下的一個傳統程序,該程序週期地運行用戶調度的任務。比起傳統的Unix版本,Linux版本添加了不少屬性,而且更安全,配置更簡單。類似計劃任務。
13. chargen:使用tcp協議的chargen server,chargen(Character Generator Protocol)是一種網絡服務,主要功能是提供類似遠程打字的功能。
14. chargen-udp:使用UDP協議的chargen server。
15. cpuspeed:監測系統空閒百分比,降低或加快CPU時鐘速度和電壓從而在系統空閒時將能源消耗降爲最小,而在系統繁忙時最大化加快系統執行速度。
16. dhcpd:動態主機控制協議(Dynamic Host Control Protocol)的服務守護進程。
17. cups: cups(Common UNIX Printing System)是通用UNIX打印守護進程。
18. cups-config-daemons:cups打印系統切換守護進程。
19. cups-lpd:cups行打印守護進程。
20. daytime:使用TCP 協議的Daytime守護進程,該協議爲客戶機實現從遠程服務器獲取日期和時間的功能。預設端口:13。
21. daytime-udp:使用UDP 協議的Daytime守護進程。
22. dc_server:使用SSL安全套接字的代理服務器守護進程。
23. dc_client:使用SSL安全套接字的客戶端守護進程。
24. diskdump:服務器磁盤備份守護進程。
25. echo:服務器回顯客戶數據服務守護進程。
26. echo-udp:使用UDP協議的服務器回顯客戶數據服務守護進程。
27. eklogin:接受rlogin會話鑑證和用kerberos5加密的一種服務的守護進程。
28. gated :網關路由守護進程。它支持各種路由協議,包括RIP版本1和2、DCN HELLO協議、 OSPF版本2以及EGP版本2到4。
29. gpm:gpm(General Purpose Mouse Daemon )守護進程爲文本模式下的Linux程序如mc(Midnight Commander)提供了鼠標的支持。
30. gssftp: 使用kerberos 5認證的ftp守護進程
31. httpd:Web服務器Apache守護進程。
32. inetd :因特網操作守護程序。
33. innd:Usenet新聞服務器守護進程。
34. iiim:中文輸入法服務器守護進程。
35. iptables:iptables防火牆守護進程。
36. irda:紅外端口守護進程。
37. isdn:isdn啓動和中止服務守護進程。
38. krb5-telnet:使用kerberos 5認證的telnet守護進程。
39. klogin:遠程登陸守護進程。
40. keytable:該進程的功能是轉載在/etc/sysconfig/keyboards裏定義的鍵盤映射表,該表可以通過kbdconfig工具進行選擇。您應該使該程序處於激活狀態。
41. irqbalance:對多個系統處理器環境下的系統中斷請求進行負載平衡的守護程序。如果你只安裝了一個CPU,就不需要加載這個守護程序。
42. kshell :kshell守護進程。
43. kudzu:硬件自動檢測程序。
44. ldap:ldap(Lightweight Directory Access Protocol)目錄訪問協議服務器守護進程。
45. lm_seroems:檢測主板工作情況守護進程。
46. lpd :lpd是老式打印守護程序,負責將lpr等程序提交給打印 作業。
47. mdmonitor:RAID相關設備的守護程序。
48. messagebus:D-BUS是一個庫,爲兩個或兩個以上的應用程序提供一對一的通訊。
49. microcode_ctl:可編碼以及發送新的微代碼到內核以更新Intel IA32系列處理器。
50. mysqld: 一個快速高效可靠的輕型SQL數據庫引擎守護進程。
51. named:DNS(BIND)服務器守護進程。
52. netplugd:netplugd(network cable hotplug management daemon)守護程序,用於監控一個或多個網絡接口的狀態,當某些事件觸發時運行一個外部腳本程序。
53. netdump:遠程網絡備份服務器守護進程。
54. netfs:Network Filesystem Mounter,該進程安裝和卸載NFS、SAMBA和NCP網絡文件系統。
55. nfs:網絡文件系統守護進程。
56. nfslock:NFS是一個流行的通過TCP/IP網絡共享文件的協議,此守護進程提供了NFS文件鎖定功能。
57. ntpd:Network time Protocol daemon(網絡時間校正協議)。ntpd是用來使系統和一個精確的時間源保持時間同步的協議守護進程。
58. network:激活/關閉啓動時的各個網絡接口守護進程。
59. psacct:該守護進程包括幾個工具用來監控進程活動的工具,包括ac,lastcomm, accton 和sa。
60. pcmcia:主要用於支持筆記本電腦接口守護進程。
61. portmap:該守護進程用來支持RPC連接,RPC被用於NFS以及NIS 等服務。
62. postgresql: PostgreSQL 關係數據庫引擎。
63. proftpd: proftpd 是Unix下的一個配置靈活的ftp服務器的守護程序。
64. pppoe:ADSL連接守護進程。
65. random :保存和恢復系統的高質量隨機數生成器,這些隨機數是系 統一些隨機行爲提供的。
66. rawdevices:在使用集羣文件系統時用於加載raw設備的守護進程。
67. readahead、readahead_early:readahead和readahead_early是在Fedora core 2中最新推出的兩個後臺運行的守護程序。其作用是在啓動系統期間,將啓動系統所要用到的文件首先讀取到內存中,然後在內存中進行執行,以加快系統的啓動速度。
68. rhnsd:Red Hat 網絡服務守護進程。通知官方的安全信息以及爲系統打補丁。
69. routed :該守護程序支持RIP協議的自動IP路由表維護。
70. rsync:remote sync遠程數據備份守護進程。
71. rsh :遠程主機上啓動一個shell,並執行用戶命令。
72. rwhod: 允許遠程用戶獲得運行rwho守護程序的機器上所有已登錄用戶的列表。
73. rstatd:一個爲LAN上的其它機器收集和提供系統信息的守候進程。
74. ruserd:遠程用戶定位服務,這是一個基於RPC的服務,它提供關於當前記錄到LAN上一個機器日誌中的用戶信息
75. rwalld:激活rpc.rwall服務進程,這是一項基於RPC的服務,允許用戶給每個註冊到LAN機器上的其他終端寫消息。
76. rwhod:激活rwhod服務進程,它支持LAN的rwho和ruptime服務。
77. saslauthd: 使用SASL的認證守護進程。
78. sendmail:郵件服務器sendmail守護進程。
79. smb:Samba文件共享/打印服務守護進程。
80. snmpd:本地簡單網絡管理守護進程。
81. squid:代理服務器squid守護進程。
82. sshd:OpenSSH服務器守護進程。Secure Shell Protocol可以實現安全地遠程管理主機。
83. smartd:Self Monitor Analysis and Reporting Technology System,監控你的硬盤是否出現故障。
84. syslog:一個讓系統引導時起動syslog和klogd系統日誌守候進程的腳本。
85. time :該守護進程從遠程主機獲取時間和日期,採用TCP協議。
86. time-udp: 該守護進程從遠程主機獲取時間和日期,採用UDP協議。
87. tux:在Linux內核中運行apache服務器的守護進程。
88. vsftpd:vsftpd服務器的守護進程。
89. vncserver: VNC (Virtual Network Computing,虛擬網絡計算)。
90. xfs:X Window字型服務器守護進程,爲本地和遠程X服務器提供字型集。
91. xinetd:支持多種網絡服務的核心守護進程。
92. ypbind:爲NIS(網絡信息系統)客戶機激活ypbind服務進程 。
93. yppasswdd:NIS口令服務器守護進程。
94. ypserv:NIS主服務器守護進程。
95. yum:RPM操作系統自動升級和軟件包管理守護進程。
可以根據自己的需要覺得是否啓動某系服務。如:u、iptables等是必須要運行的。echo、echo-udp、daytime、daytime-udp、chargen、chargen -udp做調試用可以關閉。rsh、rstatd、rsync、rusersd、rwalld這些命令都是Berkley遠程命令,因爲都以字母r開頭,故稱 r*命令。主要使用來使一臺計算機上的某個用戶以相同的帳戶遠程執行另一臺計算機的一個程序,不要可以關閉,減少隱患。innd是運行新聞組服務的進程,不要可以關閉。
http://blog.sina.com.cn/s/blog_57421ff80100c7nn.html
注:本操作是在WIN命令提示符下,phpMyAdmin同樣適用。
用戶:phplamp 用戶數據庫:phplampDB
1.新建用戶。
//登錄MYSQL
@>mysql -u root -p
@>密碼
//創建用戶
mysql> insert into mysql.user(Host,User,Password) values("localhost","phplamp",password("1234"));
//刷新系統權限表
mysql>flush privileges;
這樣就創建了一個名爲:phplamp 密碼爲:1234 的用戶。
然後登錄一下。
mysql>exit;
@>mysql -u phplamp -p
@>輸入密碼
mysql>登錄成功
2.爲用戶授權。
//登錄MYSQL(有ROOT權限)。我裏我以ROOT身份登錄.
@>mysql -u root -p
@>密碼
//首先爲用戶創建一個數據庫(phplampDB)
mysql>create database phplampDB;
//授權phplamp用戶擁有phplamp數據庫的所有權限。
>grant all privileges on phplampDB.* to phplamp@localhost identified by '1234';
//刷新系統權限表
mysql>flush privileges;
mysql>其它操作
/*
如果想指定部分權限給一用戶,可以這樣來寫:
mysql>grant select,update on phplampDB.* to phplamp@localhost identified by '1234';
//刷新系統權限表。
mysql>flush privileges;
*/
3.刪除用戶。
@>mysql -u root -p
@>密碼
mysql>DELETE FROM user WHERE User="phplamp" and Host="localhost";
mysql>flush privileges;
//刪除用戶的數據庫
mysql>drop database phplampDB;
4.修改指定用戶密碼。
@>mysql -u root -p
@>密碼
mysql>update mysql.user set password=password('新密碼') where User="phplamp" and Host="localhost";
mysql>flush privileges;
在Linux系統下,一個Services的啓動、停止以及重啓通常是通過/etc/init.d目錄下的腳本來控制的。然而,在啓動或改變運行級別時,是在/etc/rcX.d中來搜索腳本。其中X是運行級別的number。本文將解釋如何啓動、關閉和修改服務的運行。當你在Debian下安裝一個新的服務,比如Apache2,安裝完成後,默認情況下它會啓動,並在下一次重啓後自動啓動。但是如果你不是一直需要這個服務,只在需要的時候啓用它,你可以禁用它。直到你需要使用的時候,執行如下指令:
/etc/init.d/apache2 start
要實現這個目的,你需要先在/etc/rcX.d目錄中刪除所有apache2的符號鏈接,但這個方法操作麻煩,且效率低下。因此,我們建議你使用update-rc.d命令來實現這個功能。1、刪除一個服務 如果你想手動的完全禁用Apache2服務,你需要刪除其中的所有在/etc/rcX.d中的單一鏈路。但是如果使用update-rc.d,則非常簡單:
update-rc.d -f apache2 remove
參數-f是強制刪除符號鏈接,即使/etc/init.d/apache2仍然存在。 Note:這個命令僅僅禁止該服務,直到該服務被升級。如果你想在服務升級後仍然保持被禁用。應該執行如下的命令:
update-rc.d apache2 stop 80 0 1 2 3 4 5 6 .
2、增加一個服務 如果你想重新添加這個服務並讓它開機自動執行,你需要執行以下命令:
update-rc.d apache2 defaults
並且可以指定該服務的啓動順序:
update-rc.d apache2 defaults 90
還可以更詳細的控制start與kill順序:
update-rc.d apache2 defaults 20 80
其中前面的20是start時的運行順序級別,80爲kill時的級別。也可以寫成:
update-rc.d apache2 start 20 2 3 4 5 . stop 80 0 1 6 .
其中0~6爲運行級別。 update-rc.d命令不僅適用Linux服務,編寫的腳本同樣可以用這個命令設爲開機自動運行。具體參見《簡單高效的防火牆腳本》一文。
類似該功能還有一個類似的命令
chkconfig命令可以用來檢查、設置系統的各種服務。
這是Red Hat公司遵循GPL規則所開發的程序,它可查詢操作系統在每一個執行等級中會執行哪些系統服務,其中包括各類常駐服務。
使用語法:
chkconfig [--add][--del][--list][系統服務] 或 chkconfig [--level <等級代號>][系統服務][on/off/reset]
參數用法:
–add 增加所指定的系統服務,讓chkconfig指令得以管理它,並同時在系統啓動的敘述文件內增加相關數據。
–del 刪除所指定的系統服務,不再由chkconfig指令管理,並同時在系統啓動的敘述文件內刪除相關數據。
–level<等級代號> 指定讀系統服務要在哪一個執行等級中開啓或關畢。
使用範例:
chkconfig –list 列出所有的系統服務
chkconfig –add httpd 增加httpd服務
chkconfig –del httpd 刪除httpd服務
chkconfig –level httpd 2345 on 把httpd在運行級別爲2、3、4、5的情況下都是on(開啓)的狀態。
原文地址:http://baobeituping.javaeye.com/blog/834495
在Mysql中,可以通過如下方式查詢Mysql數據庫當前連接的用戶及會話信息:
1. show full processlist